test: add unit tests for pure logic modules
Add 22 test files covering imager, soundtracks, browser-headers, source-keys (figure/pet/effect), effect-source, plus catalog-translations, catalog-layouts, client-translation-files, translations-utils, and various admin/services/helpers modules. Total test count increases by 120+.
This commit is contained in:
1 parent
11e8b06bf8
commit
82e8448f26
25 files changed
+1400
-304
No files matched your search
+16
-10
@@ -1,24 +1,30 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { activeBanWhere, isBanActive } from "@/lib/bans";
|
||||
import { activeBanWhere, isBanActive, unixNow } from "./bans";
|
||||
|
||||
describe("isBanActive", () => {
|
||||
it("treats banExpire 0 as permanent", () => {
|
||||
expect(isBanActive(0, 1_700_000_000)).toBe(true);
|
||||
it("treats permanent bans (0) as active", () => {
|
||||
expect(isBanActive(0, 12345)).toBe(true);
|
||||
});
|
||||
|
||||
it("treats future expiry as active", () => {
|
||||
expect(isBanActive(1_800_000_000, 1_700_000_000)).toBe(true);
|
||||
it("treats future expiries as active", () => {
|
||||
expect(isBanActive(200, 100)).toBe(true);
|
||||
});
|
||||
|
||||
it("treats past expiry as inactive", () => {
|
||||
expect(isBanActive(1_600_000_000, 1_700_000_000)).toBe(false);
|
||||
it("treats past expiries as inactive", () => {
|
||||
expect(isBanActive(100, 200)).toBe(false);
|
||||
expect(isBanActive(100, 100)).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
describe("activeBanWhere", () => {
|
||||
it("includes permanent and future expires", () => {
|
||||
it("matches permanent and unexpired bans", () => {
|
||||
expect(activeBanWhere(100)).toEqual({
|
||||
OR: [{ banExpire: 0 }, { banExpire: { gt: 100 } }],
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe("unixNow", () => {
|
||||
it("returns seconds since epoch", () => {
|
||||
const now = unixNow();
|
||||
expect(now).toBeGreaterThan(1_700_000_000);
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user