def test_fixutre(*args, **kwargs): self.called = True raise AlreadyExists("MESSAGE")
def test_create_preexisting_topic_nofailifexists(self, mock_service): mock_service.return_value.create_topic.side_effect = AlreadyExists( 'Topic already exists: %s' % EXPANDED_TOPIC ) self.pubsub_hook.create_topic(project_id=TEST_PROJECT, topic=TEST_TOPIC)
class TestCloudDataCatalogCreateEntryOperator(TestCase): @mock.patch( "airflow.providers.google.cloud.operators.datacatalog.CloudDataCatalogHook", **{"return_value.create_entry.return_value": TEST_ENTRY}, ) def test_assert_valid_hook_call(self, mock_hook) -> None: task = CloudDataCatalogCreateEntryOperator( task_id="task_id", location=TEST_LOCATION, entry_group=TEST_ENTRY_GROUP_ID, entry_id=TEST_ENTRY_ID, entry=TEST_ENTRY, project_id=TEST_PROJECT_ID, retry=TEST_RETRY, timeout=TEST_TIMEOUT, metadata=TEST_METADATA, gcp_conn_id=TEST_GCP_CONN_ID, ) ti = mock.MagicMock() result = task.execute(context={"task_instance": ti}) mock_hook.assert_called_once_with(gcp_conn_id=TEST_GCP_CONN_ID) mock_hook.return_value.create_entry.assert_called_once_with( location=TEST_LOCATION, entry_group=TEST_ENTRY_GROUP_ID, entry_id=TEST_ENTRY_ID, entry=TEST_ENTRY, project_id=TEST_PROJECT_ID, retry=TEST_RETRY, timeout=TEST_TIMEOUT, metadata=TEST_METADATA, ) ti.xcom_push.assert_called_once_with(key="entry_id", value=TEST_ENTRY_ID) self.assertEqual(TEST_ENTRY_DICT, result) @mock.patch( "airflow.providers.google.cloud.operators.datacatalog.CloudDataCatalogHook", **{ "return_value.create_entry.side_effect": AlreadyExists(message="message"), "return_value.get_entry.return_value": TEST_ENTRY, }, ) def test_assert_valid_hook_call_when_exists(self, mock_hook) -> None: task = CloudDataCatalogCreateEntryOperator( task_id="task_id", location=TEST_LOCATION, entry_group=TEST_ENTRY_GROUP_ID, entry_id=TEST_ENTRY_ID, entry=TEST_ENTRY, project_id=TEST_PROJECT_ID, retry=TEST_RETRY, timeout=TEST_TIMEOUT, metadata=TEST_METADATA, gcp_conn_id=TEST_GCP_CONN_ID, ) ti = mock.MagicMock() result = task.execute(context={"task_instance": ti}) mock_hook.assert_called_once_with(gcp_conn_id=TEST_GCP_CONN_ID) mock_hook.return_value.create_entry.assert_called_once_with( location=TEST_LOCATION, entry_group=TEST_ENTRY_GROUP_ID, entry_id=TEST_ENTRY_ID, entry=TEST_ENTRY, project_id=TEST_PROJECT_ID, retry=TEST_RETRY, timeout=TEST_TIMEOUT, metadata=TEST_METADATA, ) mock_hook.return_value.get_entry.assert_called_once_with( location=TEST_LOCATION, entry_group=TEST_ENTRY_GROUP_ID, entry=TEST_ENTRY_ID, project_id=TEST_PROJECT_ID, retry=TEST_RETRY, timeout=TEST_TIMEOUT, metadata=TEST_METADATA, ) ti.xcom_push.assert_called_once_with(key="entry_id", value=TEST_ENTRY_ID) self.assertEqual(TEST_ENTRY_DICT, result)