"""Test product_store logic.""" from unittest.mock import patch from oto import response from availability.logic import product_store from availability.models import product as product_model @patch('availability.logic.product_store.product_in_store.create_product_store_link') # noqa @patch('availability.logic.product_store.product_model.create_product') @patch('availability.logic.product_store.product_in_store.exists_in_store') def test_import_store_links( mock_product_in_store_model_exists, mock_create_product, mock_create_pis): """Test import store links.""" mock_product = product_model.Product( product_id=3245345, upc='342643624562', ) mock_create_product.return_value = response.Response( message=mock_product.as_dict() ) mock_product_in_store_model_exists.return_value = False mock_create_pis.return_value = { 'product_id': 3245345, 'store_internal_id': '3452345', 'store_id': 1, 'status': 'live', } data = [{ 'product_id': 3245345, 'upc': '342643624562', 'store_id': 1, 'store_internal_id': '3452345' }] result = product_store.import_store_links(data) assert result.message == { 3245345: { 'product_id': 3245345, 'store_internal_id': '3452345', 'store_id': 1, 'status': 'live' } }