"""Test get_product_metadata.""" import pytest from video.constants import job_io_fields from video.logic.activities import get_product_metadata from video.models import ows_video @pytest.mark.parametrize(( 'test_description', 'custom_thumbnail_path', 'expected_outputs', ), [ ( 'Test no custom thumbnail.', None, { job_io_fields.UPC: 'test_upc', job_io_fields.THUMBNAIL_S3_KEY: 'thumbnails/original-size/test_thumbnail_path', job_io_fields.CUSTOM_THUMBNAIL_S3_KEY: None, }, ), ( 'Test custom thumbnail.', 'custom_test_thumbnail_path', { job_io_fields.UPC: 'test_upc', job_io_fields.THUMBNAIL_S3_KEY: 'thumbnails/original-size/test_thumbnail_path', job_io_fields.CUSTOM_THUMBNAIL_S3_KEY: 'thumbnails/custom/custom_test_thumbnail_path', }, ), ]) def test_get_product_metadata( mocker, test_description, custom_thumbnail_path, expected_outputs): """Test get_product_metadata.""" mocker.patch.object(ows_video, 'get_product_metadata', return_value={ 'thumbnail_path': 'test_thumbnail_path', 'custom_thumbnail_path': custom_thumbnail_path, 'upc': 'test_upc', }, autospec=True) outputs = get_product_metadata.get_product_metadata({ job_io_fields.GET_PRODUCT_METADATA_JOB_ID: 123, job_io_fields.PRODUCT_ID: 123456, }) ows_video.get_product_metadata.assert_called_once_with(123456) assert expected_outputs == outputs