This patch adds the fetch-mock library, demonstrating how it may be used to properly mock out API calls. An important change that was made was the way that 'isomorphic-fetch' was included. Since fetch-mock makes the assumption that only the window.fetch object should be overridden, we cannot invoke it via a variable. Instead, I've simply imported the library, which during import will override global.fetch if necessary. Change-Id: Ibd88b61595b4492f375294a8a08031a1a001a10c
33 lines
642 B
JavaScript
33 lines
642 B
JavaScript
import Test from "../../src/index.js";
|
|
|
|
const FetchMock = require('fetch-mock');
|
|
|
|
describe("Simple test", () => {
|
|
|
|
afterEach(() => {
|
|
FetchMock.reset();
|
|
});
|
|
|
|
it("should export a class", () => {
|
|
let t = new Test();
|
|
expect(t).toBeDefined();
|
|
});
|
|
|
|
it("should retrieve URL's", (done) => {
|
|
FetchMock.get("http://example.com/", {
|
|
status: 200,
|
|
body: "This is a test"
|
|
});
|
|
|
|
let t = new Test();
|
|
t.getUrl("http://example.com/")
|
|
.then((response) => {
|
|
return response.text();
|
|
})
|
|
.then((body) => {
|
|
expect(body).toEqual("This is a test");
|
|
done();
|
|
});
|
|
});
|
|
});
|