From 94fe5432d61d14d900e335446e9d1437ebacd5e6 Mon Sep 17 00:00:00 2001 From: Will Lopez Date: Tue, 17 Dec 2019 12:01:15 -0600 Subject: [PATCH] chore: add integration test for addressValidationServices query Signed-off-by: Will Lopez --- .../AddressValidationServicesQuery.graphql | 7 ++++ .../addressValidationServices.test.js | 39 +++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 tests/integration/api/queries/addressValidationServices/AddressValidationServicesQuery.graphql create mode 100644 tests/integration/api/queries/addressValidationServices/addressValidationServices.test.js diff --git a/tests/integration/api/queries/addressValidationServices/AddressValidationServicesQuery.graphql b/tests/integration/api/queries/addressValidationServices/AddressValidationServicesQuery.graphql new file mode 100644 index 00000000000..3b32efba994 --- /dev/null +++ b/tests/integration/api/queries/addressValidationServices/AddressValidationServicesQuery.graphql @@ -0,0 +1,7 @@ + +query { + addressValidationServices{ + name + supportedCountryCodes + } +} diff --git a/tests/integration/api/queries/addressValidationServices/addressValidationServices.test.js b/tests/integration/api/queries/addressValidationServices/addressValidationServices.test.js new file mode 100644 index 00000000000..6cfeb355647 --- /dev/null +++ b/tests/integration/api/queries/addressValidationServices/addressValidationServices.test.js @@ -0,0 +1,39 @@ +import importAsString from "@reactioncommerce/api-utils/importAsString.js"; +import TestApp from "/tests/util/TestApp.js"; + +const AddressValidationServicesQuery = importAsString("./AddressValidationServicesQuery.graphql"); + +jest.setTimeout(300000); + +const shopId = "123"; +const shopName = "Test Shop"; +let testApp; +let addressValidationServices; + +beforeAll(async () => { + testApp = new TestApp(); + + await testApp.start(); + await testApp.insertPrimaryShop({ _id: shopId, name: shopName }); + + addressValidationServices = testApp.query(AddressValidationServicesQuery); +}); + +afterAll(async () => { + await testApp.collections.Shops.deleteMany({}); + await testApp.stop(); +}); + +test("list available address validation services", async () => { + let result; + + try { + result = await addressValidationServices(); + } catch (error) { + expect(error).toBeUndefined(); + return; + } + + expect(result.addressValidationServices[0].name).toEqual("test"); + expect(result.addressValidationServices[0].supportedCountryCodes[0]).toEqual("US"); +});