Prepare v2.0.74 sidepanel reliability release
Restore and persist the package-based link collector with progressive metadata, bounded high-volume updates, safe hydration, visible selection, and complete localization. Harden download controls, snapshot ordering, history pagination, statistics recovery, settings saves, backup imports, notification persistence, and Windows storage races with regression coverage.
This commit is contained in:
@@ -4,6 +4,18 @@ import { createRendererSettings } from "../src/main/renderer-state";
|
||||
import { validateRendererSettingsUpdate } from "../src/main/renderer-settings";
|
||||
|
||||
describe("renderer settings validation", () => {
|
||||
it("projects and validates the semantic theme preference independently from the resolved palette", () => {
|
||||
const current = { ...defaultSettings(), theme: "dark" as const, themePreference: "system" as const };
|
||||
const projected = createRendererSettings(current);
|
||||
|
||||
expect(projected).toEqual(expect.objectContaining({ theme: "dark", themePreference: "system" }));
|
||||
expect(validateRendererSettingsUpdate({ theme: "light", themePreference: "system" }, current)).toEqual({
|
||||
theme: "light",
|
||||
themePreference: "system"
|
||||
});
|
||||
expect(() => validateRendererSettingsUpdate({ themePreference: "automatic" }, current)).toThrow("Settings-Payload ist ungültig");
|
||||
});
|
||||
|
||||
it("accepts every editable notification control while keeping the webhook write-only", () => {
|
||||
const current = { ...defaultSettings(), notifyUrl: "https://notify.example.test/private-hook" };
|
||||
const update = {
|
||||
|
||||
Reference in New Issue
Block a user