"""Tests for top_markets_schema module.""" from sound_recordings.schemas import top_countries def test_top_countries_streams_schema(): """Test top_countries_schema with exclude param converts to JSON object.""" mock_model_response = { "isrc": "TEST", "top_countries": [ {"country_code": "US", "streams": 666}, {"country_code": "PH", "streams": 66}, {"country_code": "MX", "streams": 6}, ], "sources": [ {"id": 286, "name": "Spotify"}, ], } expected_result = { "isrc": "TEST", "top_countries": [ {"country_code": "US", "streams": 666}, {"country_code": "PH", "streams": 66}, {"country_code": "MX", "streams": 6}, ], "sources": [{"id": 286, "name": "Spotify"}], } result = top_countries.TopCountriesStreamsSchema().dump(mock_model_response) assert result == expected_result def test_top_countries_downloads_schema(): """Test top_countries_downloads_schema converts to JSON object.""" mock_model_response = { "isrc": "TEST", "top_countries": [ {"country_code": "US", "downloads": 666}, {"country_code": "PH", "downloads": 66}, {"country_code": "MX", "downloads": 6}, ], "sources": [ {"id": 1, "name": "Apple Music"}, ], } expected_result = { "isrc": "TEST", "top_countries": [ {"country_code": "US", "downloads": 666}, {"country_code": "PH", "downloads": 66}, {"country_code": "MX", "downloads": 6}, ], "sources": [ {"id": 1, "name": "Apple Music"}, ], } result = top_countries.TopCountriesDownloadsSchema().dump(mock_model_response) assert result == expected_result