"""Tests for top_metrics module.""" from analytics.schemas import top_metrics def test_top_metrics(): """Test that top_metrics converts to JSON object.""" mock_model_response_message = { "items": [ { "isrc": "USA561066580", "streams_1_day": 100000, "growth_percentage_1_day": 0.25, "streams_7_days": 500000, "growth_percentage_7_days": 0.1, "streams_28_days": 600000, "growth_percentage_28_days": 0.02, "streams_all_time": 700000, }, { "isrc": "USJMZ1800003", "streams_1_day": 20000, "growth_percentage_1_day": 0.25, "streams_7_days": 100000, "growth_percentage_7_days": 0.1, "streams_28_days": 200000, "growth_percentage_28_days": 0.02, "streams_all_time": 300000, }, ] } expected_result = { "items": [ { "isrc": "USA561066580", "streams_1_day": 100000, "growth_percentage_1_day": 0.25, "streams_7_days": 500000, "growth_percentage_7_days": 0.1, "streams_28_days": 600000, "growth_percentage_28_days": 0.02, "streams_all_time": 700000, }, { "isrc": "USJMZ1800003", "streams_1_day": 20000, "growth_percentage_1_day": 0.25, "streams_7_days": 100000, "growth_percentage_7_days": 0.1, "streams_28_days": 200000, "growth_percentage_28_days": 0.02, "streams_all_time": 300000, }, ] } result = top_metrics.TopMetricsSchema().dump(mock_model_response_message) assert result == expected_result