"""Product schema tests.""" from contributor.api.schemas.products import ProductContributors class TestProductContributors: def test_defaults_display_artists_to_empty_list(self) -> None: payload = ProductContributors.model_validate( { "product": {"product_id": 12345}, "contributors": [], } ) assert payload.product.product_id == 12345 assert payload.contributors == [] assert payload.display_artists == [] def test_parses_display_artists(self) -> None: payload = ProductContributors.model_validate( { "product": {"product_id": 12345}, "contributors": [], "display_artists": [ { "contributor": {"uuid": "11111111-2222-4333-8444-555555555555"}, "role": "primary", } ], } ) assert str(payload.display_artists[0].contributor.uuid) == ( "11111111-2222-4333-8444-555555555555" ) assert payload.display_artists[0].role == "primary"