forked from OpenNeo/impress-2020
add snapshot tests for loadBodyName
this is setup for the next change, where we'll get to see how the query change affects the body name!
This commit is contained in:
parent
7b1d2d67f0
commit
9f3fe820c2
3 changed files with 1122 additions and 3 deletions
1086
src/server/__snapshots__/util.test.js.snap
Normal file
1086
src/server/__snapshots__/util.test.js.snap
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -20,12 +20,16 @@ beforeAll(() => {
|
|||
});
|
||||
});
|
||||
afterEach(() => {
|
||||
dbExecuteFn.mockClear();
|
||||
if (dbExecuteFn) {
|
||||
dbExecuteFn.mockClear();
|
||||
}
|
||||
});
|
||||
afterAll(() => {
|
||||
db.end();
|
||||
if (db) {
|
||||
db.end();
|
||||
}
|
||||
});
|
||||
const getDbCalls = () => dbExecuteFn.mock.calls;
|
||||
const getDbCalls = () => (dbExecuteFn ? dbExecuteFn.mock.calls : []);
|
||||
|
||||
// Add a new `expect(res).toHaveNoErrors()` to call after GraphQL calls!
|
||||
expect.extend({
|
||||
|
|
|
|||
29
src/server/util.test.js
Normal file
29
src/server/util.test.js
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
const gql = require("graphql-tag");
|
||||
const { getDbCalls } = require("./query-tests/setup.js");
|
||||
|
||||
const connectToDb = require("./db");
|
||||
const { loadBodyName } = require("./util");
|
||||
|
||||
describe("loadBodyName", () => {
|
||||
it("returns placeholder string for 0", async () => {
|
||||
const bodyName = await loadBodyName("0");
|
||||
expect(bodyName).toEqual("All bodies");
|
||||
expect(getDbCalls()).toEqual([]);
|
||||
});
|
||||
|
||||
it("loads body name for all body IDs", async () => {
|
||||
jest.setTimeout(60000);
|
||||
|
||||
const db = await connectToDb();
|
||||
const [rows] = await db.query(
|
||||
`SELECT DISTINCT body_id FROM pet_types ORDER BY body_id ASC`
|
||||
);
|
||||
const bodyIds = rows.map((r) => String(r["body_id"]));
|
||||
|
||||
const bodyNames = await Promise.all(
|
||||
bodyIds.map((bodyId) => loadBodyName(bodyId, db).then((n) => [bodyId, n]))
|
||||
);
|
||||
|
||||
expect(bodyNames).toMatchSnapshot();
|
||||
});
|
||||
});
|
||||
Loading…
Reference in a new issue