Files
test/backend/__tests__/__integration__/dal/config.spec.ts
Benjamin Falch 2bc741fb78
Some checks failed
Mark Stale PRs / stale (push) Has been cancelled
adding monkeytype
2026-04-23 13:53:44 +02:00

43 lines
1.1 KiB
TypeScript

import { ObjectId } from "mongodb";
import { describe, expect, it } from "vitest";
import * as ConfigDal from "../../../src/dal/config";
const getConfigCollection = ConfigDal.__testing.getConfigCollection;
describe("ConfigDal", () => {
describe("saveConfig", () => {
it("should save and update user configuration correctly", async () => {
//GIVEN
const uid = new ObjectId().toString();
await getConfigCollection().insertOne({
uid,
config: {
ads: "on",
time: 60,
quickTab: true, //legacy value
},
} as any);
//WHEN
await ConfigDal.saveConfig(uid, {
ads: "on",
difficulty: "normal",
} as any);
//WHEN
await ConfigDal.saveConfig(uid, { ads: "off" });
//THEN
const savedConfig = (await ConfigDal.getConfig(
uid,
)) as ConfigDal.DBConfig;
expect(savedConfig.config.ads).toBe("off");
expect(savedConfig.config.time).toBe(60);
//should remove legacy values
expect((savedConfig.config as any)["quickTab"]).toBeUndefined();
});
});
});