diff --git a/api/package.json b/api/package.json index dca56b1b..bff625b2 100644 --- a/api/package.json +++ b/api/package.json @@ -5,7 +5,7 @@ "main": "dist/Server.js", "types": "dist/Server.d.ts", "scripts": { - "test": "npm run build && jest --coverage --verbose ./tests", + "test": "npm run build && jest --coverage --verbose --forceExit ./tests", "test:watch": "jest --watch", "start": "npm run build && node dist/start", "build": "npx tsc -b .", @@ -90,9 +90,9 @@ }, "jest": { "setupFiles": [ - "/jest/setup.js", - "/scripts/setup_test.js" + "/jest/setup.js" ], + "globalSetup": "/scripts/globalSetup.js", "verbose": true } } diff --git a/api/scripts/setup_test.js b/api/scripts/globalSetup.js similarity index 69% rename from api/scripts/setup_test.js rename to api/scripts/globalSetup.js index 95bf2e40..76cd8e0d 100644 --- a/api/scripts/setup_test.js +++ b/api/scripts/globalSetup.js @@ -1,12 +1,13 @@ const fs = require("fs"); const { FosscordServer } = require("../dist/Server"); const Server = new FosscordServer({ port: 3001 }); -(async () => { +global.server = Server; +module.exports = async () => { try { - fs.unlinkSync(`${__dirname}/database.db`); + fs.unlinkSync(`${__dirname}/../database.db`); } catch {} return await Server.start(); -})(); +}; // afterAll(async () => { // return await Server.stop(); diff --git a/api/tests/routes/auth/login.test.js b/api/tests/routes/auth/login.test.js new file mode 100644 index 00000000..d4b52444 --- /dev/null +++ b/api/tests/routes/auth/login.test.js @@ -0,0 +1,33 @@ +const supertest = require("supertest"); +const request = supertest("http://localhost:3001"); + +describe("/api/auth/login", () => { + describe("POST", () => { + test("without body", async () => { + const response = await request.post("/api/auth/login").send({}); + expect(response.statusCode).toBe(400); + }); + test("with body", async () => { + const user = { + login: "fortnitefortnite@gmail.com", + password: "verysecurepassword" + }; + + await request.post("/api/auth/register").send({ + fingerprint: "805826570869932034.wR8vi8lGlFBJerErO9LG5NViJFw", + email: user.login, + username: user.login.split("@")[0], + password: user.password, + invite: null, + consent: true, + date_of_birth: "2000-04-04", + gift_code_sku_id: null, + captcha_key: null + }); + + const response = await request.post("/api/auth/login").send(user); + + expect(response.statusCode).toBe(200); + }); + }); +}); diff --git a/api/tests/routes/auth/login.test.js.disabled b/api/tests/routes/auth/login.test.js.disabled deleted file mode 100644 index f677cebd..00000000 --- a/api/tests/routes/auth/login.test.js.disabled +++ /dev/null @@ -1,2 +0,0 @@ -const supertest = require("supertest"); -const request = supertest("http://localhost:1870"); diff --git a/api/tests/routes/auth/register.test.js b/api/tests/routes/auth/register.test.js index f42f004a..5d7b4eaa 100644 --- a/api/tests/routes/auth/register.test.js +++ b/api/tests/routes/auth/register.test.js @@ -1,10 +1,11 @@ const supertest = require("supertest"); const request = supertest("http://localhost:3001"); -describe("/api/register", () => { +describe("/api/auth/register", () => { describe("POST", () => { test("without body", async () => { const response = await request.post("/api/auth/register").send({}); + expect(response.statusCode).toBe(400); }); test("with body", async () => { @@ -19,6 +20,7 @@ describe("/api/register", () => { gift_code_sku_id: null, captcha_key: null }); + expect(response.statusCode).toBe(200); }); }); diff --git a/cdn/package-lock.json b/cdn/package-lock.json index 673395a5..a94f1409 100644 Binary files a/cdn/package-lock.json and b/cdn/package-lock.json differ diff --git a/util/src/util/Database.ts b/util/src/util/Database.ts index c22d8abd..d3844cd9 100644 --- a/util/src/util/Database.ts +++ b/util/src/util/Database.ts @@ -21,7 +21,7 @@ export function initDatabase() { // entities: Object.values(Models).filter((x) => x.constructor.name !== "Object"), synchronize: true, - logging: true, + logging: false, cache: { duration: 1000 * 3, // cache all find queries for 3 seconds },