def test_minimal_green_path(self, mock_hook): mock_hook.return_value.create_product_set.return_value = {} op = CloudVisionCreateProductSetOperator(location=LOCATION_TEST, product_set=PRODUCTSET_TEST, task_id='id') op.execute(context=None) mock_hook.assert_called_once_with(gcp_conn_id=GCP_CONN_ID) mock_hook.return_value.create_product_set.assert_called_once_with( location=LOCATION_TEST, product_set=PRODUCTSET_TEST, product_set_id=None, project_id=None, retry=None, timeout=None, metadata=None, )
def test_already_exists(self, mock_hook): mock_hook.return_value.create_product_set.side_effect = AlreadyExists(message='') # Exception AlreadyExists not raised, caught in the operator's execute() - idempotence op = CloudVisionCreateProductSetOperator( location=LOCATION_TEST, product_set=PRODUCTSET_TEST, product_set_id=PRODUCTSET_ID_TEST, project_id='mock-project-id', task_id='id', ) result = op.execute(None) self.assertEqual(PRODUCTSET_ID_TEST, result)