feat: expand advanced widget experiences
This commit is contained in:
1 parent
9437d211c8
commit
c099a8eef6
119 files changed
+3624
-844
No files matched your search
@@ -2,7 +2,13 @@ import dayjs from "dayjs";
|
||||
import frenchLocale from "dayjs/locale/fr";
|
||||
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
||||
|
||||
import { formatRelativeTime, getResourceTimestamp } from "./coolify-utils";
|
||||
import {
|
||||
formatRelativeTime,
|
||||
getCoolifySectionVisibility,
|
||||
getCoolifyServerState,
|
||||
getResourceTimestamp,
|
||||
isCoolifyServerOnline,
|
||||
} from "./coolify-utils";
|
||||
|
||||
describe("Coolify time formatting", () => {
|
||||
beforeEach(() => {
|
||||
@@ -27,3 +33,51 @@ describe("Coolify time formatting", () => {
|
||||
expect(getResourceTimestamp({ status: "running", updated_at: "2026-08-02T11:00:00Z" }, "service")).toBeUndefined();
|
||||
});
|
||||
});
|
||||
|
||||
describe("Coolify advanced display", () => {
|
||||
it("forces every non-sensitive section without changing compact settings", () => {
|
||||
const options = { showServers: false, showApplications: true, showServices: false };
|
||||
|
||||
expect(getCoolifySectionVisibility(options, "compact")).toEqual(options);
|
||||
expect(getCoolifySectionVisibility(options, "advanced")).toEqual({
|
||||
showServers: true,
|
||||
showApplications: true,
|
||||
showServices: true,
|
||||
});
|
||||
});
|
||||
|
||||
it("uses top-level server state before the settings fallback", () => {
|
||||
const server = {
|
||||
id: null,
|
||||
uuid: "server-1",
|
||||
name: "Build server",
|
||||
ip: null,
|
||||
is_reachable: false,
|
||||
is_usable: null,
|
||||
settings: {
|
||||
server_id: null,
|
||||
is_build_server: null,
|
||||
is_reachable: true,
|
||||
is_usable: true,
|
||||
},
|
||||
};
|
||||
|
||||
expect(getCoolifyServerState(server, "is_reachable")).toBe(false);
|
||||
expect(getCoolifyServerState(server, "is_usable")).toBe(true);
|
||||
});
|
||||
|
||||
it("does not count unknown reachability as online", () => {
|
||||
const server = {
|
||||
id: null,
|
||||
uuid: "server-unknown",
|
||||
name: "Unknown server",
|
||||
ip: null,
|
||||
is_reachable: null,
|
||||
is_usable: null,
|
||||
settings: null,
|
||||
};
|
||||
|
||||
expect(getCoolifyServerState(server, "is_reachable")).toBeUndefined();
|
||||
expect(isCoolifyServerOnline(server)).toBe(false);
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user