Skip to content

Commit

Permalink
fixed broken IMF ingest tests
Browse files Browse the repository at this point in the history
  • Loading branch information
bobby-didcoding committed Mar 18, 2024
1 parent bad330d commit ce3d9d0
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ def handle(self, *args, **options):
self.stderr.write(self.style.ERROR(e))
send_ingest_error_notify_email(table_view_names['view_name'], e)
else:
print("test")
self.stdout.write(self.style.NOTICE(f'{table_view_names["view_name"]} does not need updating'))

self.stdout.write(self.style.SUCCESS('Finished Market Guides import!'))
19 changes: 14 additions & 5 deletions dataservices/management/commands/tests/test_import_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -388,8 +388,15 @@ def test_import_world_economic_outlook_data(read_sql_mock, world_economic_outloo
assert len(models.WorldEconomicOutlookByCountry.objects.all()) == 0

management.call_command('import_countries')

# Dry run
management.call_command('import_world_economic_outlook_data')

assert len(models.WorldEconomicOutlookByCountry.objects.all()) == 0

# Write option
management.call_command('import_world_economic_outlook_data', '--write')

assert len(models.WorldEconomicOutlookByCountry.objects.all()) == 10


Expand Down Expand Up @@ -426,7 +433,7 @@ def test_import_metadata_source_data_filter_tables():
@pytest.mark.django_db
@pytest.mark.parametrize(
'env, review_requested_x_times',
[('dev', 0), ('staging', 3), ('uat', 0), ('production', 0)],
[('dev', 0), ('staging', 4), ('uat', 0), ('production', 0)],
)
@mock.patch('dataservices.management.commands.import_market_guides_data.call_command')
@mock.patch('dataservices.management.commands.helpers.MarketGuidesDataIngestionCommand.should_ingestion_run')
Expand All @@ -439,14 +446,15 @@ def test_import_market_guides_data(
'import_uk_total_trade_data',
'import_uk_trade_in_goods_data',
'import_uk_trade_in_services_data',
'import_world_economic_outlook_data',
]
mock_should_run.return_value = False
management.call_command('import_market_guides_data', '--write')
assert mock_call_command.call_count == 0

mock_should_run.return_value = True
management.call_command('import_market_guides_data', '--write')
assert mock_call_command.call_count == 6
assert mock_call_command.call_count == 8
assert mock_send_review_request.call_count == review_requested_x_times

for command in command_list:
Expand All @@ -462,12 +470,13 @@ def test_import_market_guides_data_dry_run(mock_call_command, mock_should_run):
'import_uk_total_trade_data',
'import_uk_trade_in_goods_data',
'import_uk_trade_in_services_data',
'import_world_economic_outlook_data',
]
mock_should_run.return_value = True

management.call_command('import_market_guides_data')

assert mock_call_command.call_count == 6
assert mock_call_command.call_count == 8

for command in command_list:
assert command in str(mock_call_command.call_args_list)
Expand All @@ -486,9 +495,9 @@ def test_import_market_guides_data_error(mock_call_command, mock_should_run, moc
management.call_command('import_market_guides_data')

mock_email_string = str(mock_error_email.mock_calls)
assert mock_call_command.call_count == 3
assert mock_call_command.call_count == 4
assert 'oops' in str(mock_call_command.side_effect)
assert mock_error_email.call_count == 3
assert mock_error_email.call_count == 4
assert 'area_of_error' in mock_email_string
assert 'error_type' in mock_email_string
assert 'error_details' in mock_email_string
Expand Down

0 comments on commit ce3d9d0

Please sign in to comment.