class BannerTest(TestCase): def setUp(self): self.api = Api(dummy_api_key, api_dev_url, False) self.dummy_email = "*****@*****.**" @activate def test_request(self): register_uri( GET, "http://%s/api/v2/banner/%s?email=%s" % (api_dev_url, dummy_campaign_uuid, self.dummy_email), body=bytearray( """ { "bannerImageUrl": "https://buyexpressly.com/assets/banner/awesome-banner.jpg", "migrationLink": "https://www.myblog.com/expressly/api/3aff1880-b0f5-45bd-8f33-247f55981f2c" }""", "utf-8", ), status=200, content_type="application/json", ) response = self.api.get_banner(dummy_campaign_uuid, self.dummy_email) self.assertEqual(response.status, 200) self.assertIsInstance(response.data, BannerResponse) self.assertTrue(validate(BannerResponse, response.data))
class CustomerMigrationSuccessTest(TestCase): def setUp(self): self.api = Api(dummy_api_key, api_dev_url, False) @activate def test_migration_status_migrated(self): register_uri( POST, 'http://%s/api/v2/migration/%s/success' % (api_dev_url, dummy_campaign_customer_uuid), body=b'{"success":true,"msg":"User registered as migrated"}', status=200, content_type='application/json' ) response = self.api.send_migration_status(dummy_campaign_customer_uuid) self.assertEqual(response.status, 200) self.assertIsInstance(response.data, MigrationStatusResponse) self.assertTrue(validate(MigrationStatusResponse, response.data)) self.assertTrue(response.data.success) @activate def test_migration_status_exists(self): register_uri( POST, 'http://%s/api/v2/migration/%s/success' % (api_dev_url, dummy_campaign_customer_uuid), body=b'{"success":true,"msg":"User already migrated"}', status=200, content_type='application/json' ) response = self.api.send_migration_status(dummy_campaign_customer_uuid) self.assertEqual(response.status, 200) self.assertIsInstance(response.data, MigrationStatusResponse) self.assertTrue(validate(MigrationStatusResponse, response.data)) self.assertTrue(response.data.success)
class PingTest(TestCase): def setUp(self): self.api = Api(dummy_api_key, api_dev_url, False) def test_request(self): response = self.api.ping() self.assertEqual(response.status, 200) self.assertIsInstance(response.data, PingResponse) self.assertTrue(validate(PingResponse, response.data)) self.assertEqual(response.data.server_status, 'Live') self.assertEqual(response.data.db_status, 'Live')
class CustomerMigrationPopupTest(TestCase): def setUp(self): self.api = Api(dummy_api_key, api_dev_url, False) @activate def test_migration_popup(self): register_uri( GET, 'http://%s/api/v2/migration/%s' % (api_dev_url, dummy_campaign_customer_uuid), body=b'<div></div>', status=200, content_type='text/html' ) try: response = self.api.get_migration_popup(dummy_campaign_customer_uuid) self.assertTrue(response.status, 200) self.assertEqual(response.data, '<div></div>') except InvalidHTMLError: self.fail("Passed HTML was not valid.")
def setUp(self): self.api = Api(dummy_api_key, api_dev_url, False)
class CustomerMigrationDataTest(TestCase): def setUp(self): self.api = Api(dummy_api_key, api_dev_url, False) @activate def test_request(self): register_uri( GET, 'http://%s/api/v2/migration/%s/user' % (api_dev_url, dummy_campaign_customer_uuid), body=bytearray(""" { "meta": { "locale": "UKR", "sender": "https://expresslyapp.com/api/v2/migration/%s}" }, "data": { "email": "*****@*****.**", "customerData": { "firstName": "John", "lastName": "Smith", "gender": "M", "billingAddress": 0, "shippingAddress": 1, "company": "Expressly", "dob": "1987-08-07", "taxNumber": "GB0249894821", "onlinePresence": [ { "field": "website", "value": "http://www.myblog.com" } ], "dateUpdated": "2015-07-10T11:42:00+01:00", "emails": [ { "email": "*****@*****.**", "alias": "default" }, { "email": "*****@*****.**", "alias": "work" } ], "phones": [ { "type": "M", "number": "020734581250", "countryCode": 44 }, { "type": "L", "number": "020731443250", "countryCode": 44 } ], "addresses": [ { "firstName": "John", "lastName": "Smith", "address1": "12 Piccadilly", "address2": "Room 14", "city": "London", "companyName": "WorkHard Ltd", "zip": "W1C 34U", "phone": 1, "alias": "Work address", "stateProvince": "LND", "country": "GBR" }, { "firstName": "John C.", "lastName": "Smith", "address1": "23 Sallsberry Ave", "address2": "Flat 3", "city": "London", "companyName": "", "zip": "NW3 4HG", "phone": 0, "alias": "Home address", "stateProvince": "LND", "country": "GBR" } ] }, "cart": { "productId": "491", "couponCode": "20OFF" } } }""" % dummy_campaign_customer_uuid, 'utf-8'), status=200, content_type='application/json' ) response = self.api.get_migration_customer(dummy_campaign_customer_uuid) self.assertTrue(response.status, 200) self.assertIsInstance(response.data, MigrationCustomerResponse) self.assertTrue(validate(MigrationCustomerResponse, response.data))
def setUp(self): self.api = Api(dummy_api_key, api_dev_url, False) self.dummy_email = "*****@*****.**"