Jest testing
https://jestjs.io/docs/getting-started
const test = (fetch) => {
return fetch("test");
};
module.exports = test;
index.test.js
const testFunction = require("./index");
test("test callback function", (done) => {
function fetch(data) {
try {
expect(data).toBe("test_fake");
done();
} catch (error) {
done(error);
}
}
testFunction(fetch);
});
========================================================================
Test string => toMatch(some_regex)
Test value => toBe(value_expect)
========================================================================
index.js
const fetchData = (fetch) => {
return new Promise((resolve, reject) => {
resolve("hello");
});
};
module.exports = fetchData;
index.test.js
const fetchData = require("./index");
test("test promise", () => {
return fetchData().then((data) => {
expect(data).toBe("hello");
});
});
========================================================================
index.test.js
const fetchData = require("./index");
test("test async function", async () => {
const data = await fetchData();
expect(data).toBe("hello");
});
index.js