"""Tests for ows-product Model.""" import json import httpretty from images import api from images import config from images.constants import errors from images.models import ows_product @httpretty.activate def test_get_vendor_and_subaccount_by_upc_first( context, mocker, filename, ows_product_response_body, upc, valid_headers, account_info): """Respond with account info from ows-product.""" with context, api.app.test_request_context(headers=valid_headers): httpretty.register_uri( httpretty.GET, '{ows_product_url}/product/upc/{upc}'.format( ows_product_url=config.OWS_PRODUCT_URL, upc=upc), body=json.dumps(ows_product_response_body), content_type='application/json', status=200) product_response = ows_product.get_vendor_and_subaccount_by_upc(upc) assert product_response.status == 200 assert product_response.message == account_info @httpretty.activate def test_get_vendor_and_subaccount_by_upc_failure( context, mocker, filename, ows_product_response_body, upc, valid_headers, account_info): """Respond with account info from ows-product.""" with context, api.app.test_request_context(headers=valid_headers): httpretty.register_uri( httpretty.GET, '{ows_product_url}/product/upc/{upc}'.format( ows_product_url=config.OWS_PRODUCT_URL, upc=upc), body=json.dumps(errors.INTERNAL_ERROR), content_type='application/json', status=500) product_response = ows_product.get_vendor_and_subaccount_by_upc(upc) assert product_response.status == 500 assert product_response.errors == { 'message': '"internal_error"', 'code': 'Internal Server Error'}