Merge branch 'testing' of ssh://git.fai.st:2600/fedi-image-bot/bot-api into testing
Unit Tests with docker compose / unit-test (pull_request) Failing after 47s Details
Unit Tests / unit-test (pull_request) Failing after 1m36s Details

This commit is contained in:
Sugui 2023-12-29 17:12:06 +01:00
commit 071994a17c
4 changed files with 23 additions and 41 deletions

View File

@ -7,7 +7,6 @@ const authTokenSecret = process.env.JWTSECRET || "badsecret";
class AuthControler {
async login(req: Request, res: Response) {
// Read app and secret from request body
console.log(req.body)
const { app, secret } = req.body;
// Filter app from the apps by app and secret

View File

@ -2,9 +2,7 @@ import AuthModel, { Auth } from "../models/AuthModel";
class AuthService {
async find(app: String, secret: String): Promise<Auth | null> {
console.log(app, secret)
const auth = await AuthModel.findOne({ app: app, secret: secret });
console.log(auth)
return auth;
}
}

View File

@ -1,5 +1,5 @@
import { afterAll, afterEach, beforeAll, describe, expect, it, mock } from "bun:test";
import request from "supertest";
import request, { Response } from "supertest";
import app, { startApp } from "../src/app";
import imageService from "../src/services/ImageService";
import memoryServer from "./memoryServer";
@ -33,6 +33,28 @@ afterEach(() => {
}));
});
describe("/login works as instended", async () => {
let correctRespose: Response;
beforeAll(async () => {
correctRespose = await request(app)
.post("/login")
.send({ app: "tester", secret: "test" });
});
it("should return 200 for correct login", async () => {
expect(correctRespose.status).toBe(200);
});
it("should contain a token", () => {
expect(correctRespose.body).toHaveProperty("token");
});
it("should return 403 for invalid credentials", async () => {
const res = await request(app).post("/login").send({});
expect(res.status).toBe(403);
});
});
describe("GET / shows all of the endpoints", async () => {
const res = await request(app).get("/");

View File

@ -1,37 +0,0 @@
import { afterAll, beforeAll, describe, expect, it } from "bun:test";
import request, { Response } from "supertest";
import app, { startApp } from "../src/app";
import memoryServer from "./memoryServer";
import populateDatabase from "./populateDatabase";
beforeAll(async () => {
if (!process.env.DEDICATED_MONGODB_SERVER) await memoryServer.start();
await startApp();
await populateDatabase();
});
afterAll(async () => {
if (!process.env.DEDICATED_MONGODB_SERVER) await memoryServer.stop();
});
describe("/login", async () => {
let correctRespose: Response;
beforeAll(async () => {
correctRespose = await request(app)
.post("/login")
.send({ app: "tester", secret: "test" });
});
it("should return 200 for correct login", async () => {
expect(correctRespose.status).toBe(200);
});
it("should contain a token", () => {
expect(correctRespose.body).toHaveProperty("token");
});
it("should return 403 for invalid credentials", async () => {
const res = await request(app).post("/login").send({});
expect(res.status).toBe(403);
});
});