Browse Source

fix tests

master
Maurits Lourens 5 years ago
parent
commit
dbf747f749
  1. 70
      packages/server/src/integrations/tests/rest.spec.js

70
packages/server/src/integrations/tests/rest.spec.js

@ -1,98 +1,100 @@
jest.mock("node-fetch", () => jest.fn(() => ({ json: jest.fn(), text: jest.fn() }))) jest.mock("node-fetch", () =>
jest.fn(() => ({ json: jest.fn(), text: jest.fn() }))
)
const fetch = require("node-fetch") const fetch = require("node-fetch")
const RestIntegration = require("../rest") const RestIntegration = require("../rest")
class TestConfiguration { class TestConfiguration {
constructor(config = {}) { constructor(config = {}) {
this.integration = new RestIntegration.integration(config) this.integration = new RestIntegration.integration(config)
} }
} }
describe("REST Integration", () => { describe("REST Integration", () => {
const BASE_URL = "https://myapi.com" const BASE_URL = "https://myapi.com"
let config let config
beforeEach(() => { beforeEach(() => {
config = new TestConfiguration({ config = new TestConfiguration({
url: BASE_URL url: BASE_URL,
}) })
}) })
it("calls the create method with the correct params", async () => { it("calls the create method with the correct params", async () => {
const query = { const query = {
path: "/api", path: "api",
queryString: "?test=1", queryString: "test=1",
headers: { headers: {
Accept: "application/json" Accept: "application/json",
}, },
json: { json: {
name: "test" name: "test",
} },
} }
const response = await config.integration.create(query) const response = await config.integration.create(query)
expect(fetch).toHaveBeenCalledWith(`${BASE_URL}/api?test=1`, { expect(fetch).toHaveBeenCalledWith(`${BASE_URL}/api?test=1`, {
method: "POST", method: "POST",
body: "{\"name\":\"test\"}", body: '{"name":"test"}',
headers: { headers: {
Accept: "application/json" Accept: "application/json",
} },
}) })
}) })
it("calls the read method with the correct params", async () => { it("calls the read method with the correct params", async () => {
const query = { const query = {
path: "/api", path: "api",
queryString: "?test=1", queryString: "test=1",
headers: { headers: {
Accept: "text/html" Accept: "text/html",
} },
} }
const response = await config.integration.read(query) const response = await config.integration.read(query)
expect(fetch).toHaveBeenCalledWith(`${BASE_URL}/api?test=1`, { expect(fetch).toHaveBeenCalledWith(`${BASE_URL}/api?test=1`, {
headers: { headers: {
Accept: "text/html" Accept: "text/html",
} },
}) })
}) })
it("calls the update method with the correct params", async () => { it("calls the update method with the correct params", async () => {
const query = { const query = {
path: "/api", path: "api",
queryString: "?test=1", queryString: "test=1",
headers: { headers: {
Accept: "application/json" Accept: "application/json",
}, },
json: { json: {
name: "test" name: "test",
} },
} }
const response = await config.integration.update(query) const response = await config.integration.update(query)
expect(fetch).toHaveBeenCalledWith(`${BASE_URL}/api?test=1`, { expect(fetch).toHaveBeenCalledWith(`${BASE_URL}/api?test=1`, {
method: "POST", method: "POST",
body: "{\"name\":\"test\"}", body: '{"name":"test"}',
headers: { headers: {
Accept: "application/json" Accept: "application/json",
} },
}) })
}) })
it("calls the delete method with the correct params", async () => { it("calls the delete method with the correct params", async () => {
const query = { const query = {
path: "/api", path: "api",
queryString: "?test=1", queryString: "test=1",
headers: { headers: {
Accept: "application/json" Accept: "application/json",
}, },
json: { json: {
name: "test" name: "test",
} },
} }
const response = await config.integration.delete(query) const response = await config.integration.delete(query)
expect(fetch).toHaveBeenCalledWith(`${BASE_URL}/api?test=1`, { expect(fetch).toHaveBeenCalledWith(`${BASE_URL}/api?test=1`, {
method: "DELETE", method: "DELETE",
headers: { headers: {
Accept: "application/json" Accept: "application/json",
} },
}) })
}) })
}) })

Loading…
Cancel
Save