From 8cc738c9b203acb26b807e83699fe719d4107dee Mon Sep 17 00:00:00 2001 From: grimhilt Date: Tue, 11 Apr 2023 18:19:47 +0200 Subject: [PATCH] tests to mysql (not working) --- back/test/db/api-tes.ts | 48 ++++++++++++++++++++++++++++++++ front/src/views/room/Message.vue | 2 +- 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 back/test/db/api-tes.ts diff --git a/back/test/db/api-tes.ts b/back/test/db/api-tes.ts new file mode 100644 index 0000000..1358f40 --- /dev/null +++ b/back/test/db/api-tes.ts @@ -0,0 +1,48 @@ +process.env.NODE_ENV = "test"; +import { jest, describe, it, expect } from "@jest/globals"; +import { execQueryAsync, execQuery } from "../../db/db"; +import { createRoom, registerMessageInRoom } from "../../db/message/saveMessage-db"; +import { registerFlag, registerMessage } from "../../db/message/storeMessage-db"; +import { getFlagId } from "../../db/utils/mail"; +import { RoomType } from "../../mails/message/saveMessage"; + + +beforeAll(async () => { + console.log(await execQueryAsync(`SHOW TABLES`, [])); + // mocked(incrementNotSeenRoom).mockImplementation(db.incrementNotSeenRoom); +}); + +beforeEach(async () => { + const query = "SELECT table_name FROM INFORMATION_SCHEMA.tables WHERE table_schema = 'mail_test'"; + execQueryAsync(query, []).then((results) => { + execQuery("SET FOREIGN_KEY_CHECKS=0", []); + results.map((table) => { + execQuery("DELETE FROM " + table.table_name, []); + // execQuery("DROP TABLE " + table.table_name); + }); + }); +}); + +const insertMessageWithFlag = async (flags: string[]): Promise => { + const messageId = await registerMessage("", 0, ""); + flags.forEach(async (flag) => { + const flagId = await getFlagId(flag); + await registerFlag(messageId, flagId); + }); + return messageId; +} + +describe("api-db", () => { + it.only("should count the number of unseen message in a room", async () => { + const msgIdSeen = await insertMessageWithFlag(["\\\\Seen"]); + const msgIdNotSeen = await insertMessageWithFlag([]); + const msgIdNotSeen2 = await insertMessageWithFlag([]); + const roomId = await createRoom("roomName", 0, msgIdSeen, RoomType.ROOM); + await registerMessageInRoom(msgIdSeen, roomId, ""); + await registerMessageInRoom(msgIdNotSeen, roomId, ""); + await registerMessageInRoom(msgIdNotSeen2, roomId, ""); + + const res = + expect() + }) +}); diff --git a/front/src/views/room/Message.vue b/front/src/views/room/Message.vue index db3cbb3..0fccc68 100644 --- a/front/src/views/room/Message.vue +++ b/front/src/views/room/Message.vue @@ -107,7 +107,7 @@ const classes = (): string => {
-
options
+
options {{ props?.msg?.flags }}