diff options
author | Flam3rboy <34555296+Flam3rboy@users.noreply.github.com> | 2021-08-26 02:07:16 +0200 |
---|---|---|
committer | Flam3rboy <34555296+Flam3rboy@users.noreply.github.com> | 2021-08-26 02:07:16 +0200 |
commit | c4426920a113b419c22f27eda347e5a04c108acc (patch) | |
tree | e475e8af64c3e6c7e6086c1cc09c3a8daa9046a0 /util/tests | |
parent | :sparkles: unit test (diff) | |
download | server-c4426920a113b419c22f27eda347e5a04c108acc.tar.xz |
:bug: fix unit tests
Diffstat (limited to 'util/tests')
-rw-r--r-- | util/tests/setupJest.js | 19 | ||||
-rw-r--r-- | util/tests/validate.test.js | 25 |
2 files changed, 32 insertions, 12 deletions
diff --git a/util/tests/setupJest.js b/util/tests/setupJest.js new file mode 100644 index 00000000..551d2be5 --- /dev/null +++ b/util/tests/setupJest.js @@ -0,0 +1,19 @@ +const { performance } = require("perf_hooks"); + +global.expect.extend({ + toBeFasterThan: async (func, target) => { + const start = performance.now(); + var error; + try { + await func(); + } catch (e) { + error = e.toString(); + } + const time = performance.now() - start; + + return { + pass: time < target && !error, + message: () => error || `${func.name} took ${time}ms of maximum ${target}`, + }; + }, +}); diff --git a/util/tests/validate.test.js b/util/tests/validate.test.js index d36da1ed..c885a167 100644 --- a/util/tests/validate.test.js +++ b/util/tests/validate.test.js @@ -1,30 +1,31 @@ const { initDatabase } = require("../dist/util/Database"); const { User } = require("../dist/entities/User"); +jest.setTimeout(10000); -beforeAll(async () => { - await initDatabase(); - new User().validate(); +beforeAll((done) => { + initDatabase().then(() => { + new User().validate(); // warm up schema/model + done(); + }); }); describe("Validate model class properties", () => { - describe("validation should be faster than 20ms", () => { - expect(() => new User().validate()).toBeFasterThan(20); - }); - describe("User", () => { - test("object instead of string", () => { + test("object instead of string", async () => { expect(() => { new User({ username: {} }).validate(); }).toThrow(); }); }); + test("validation should be faster than 20ms", () => { + expect(() => { + new User().validate(); + }).toBeFasterThan(20); + }); + test("should not set opts", () => { const user = new User({ opts: { id: 0 } }); expect(user.opts.id).not.toBe(0); }); - - test("test", () => { - expect(1).toBe(1); - }); }); |