import { assert, expect, it } from "vite-plus/test";import { DEFAULT_CLIENT_SETTINGS, type DesktopSnapShotState } from "@t3tools/contracts"; import { createRecordingRequestTracker, snapShotStatus, snapShotShortcutStatus, snapShotUnavailableMessage, snapShotSoundPatch, snapShotFeedbackUnavailableMessage, snapShotSetupSummary, snapShotSetupButtonLabel, snapShotSetupComplete, snapShotDescription, snapShotAccessibilityUnavailableMessage,} from "./SnapShotSettings.logic"; it.each([ ["off", { snapShotPlaySound: false }], ["soft-pop", { snapShotPlaySound: true, snapShotSound: "soft-pop" }], ["camera-shutter", { snapShotPlaySound: true, snapShotSound: "camera-shutter" }],] as const)("maps %s to compatible capture settings", (sound, patch) => { expect(snapShotSoundPatch(sound)).toEqual(patch);}); it("offers effects only with a capable GNOME extension, explaining how to upgrade v1", () => { const state: DesktopSnapShotState = { mode: "portal", linuxBackend: "gnome-extension", shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: true, shortcutMessage: null, message: null, }; expect(snapShotFeedbackUnavailableMessage(state)).toContain("Update"); expect( snapShotFeedbackUnavailableMessage({ ...state, linuxFeedbackAvailable: true }), ).toBeUndefined(); expect(snapShotFeedbackUnavailableMessage({ ...state, linuxBackend: "picker" })).toContain( "aren't available", ); expect(snapShotFeedbackUnavailableMessage({ ...state, mode: "direct" })).toBeUndefined();}); it("ignores a stale request after a newer request starts", () => { const requests = createRecordingRequestTracker(); const firstRequest = requests.tryBegin(); assert(firstRequest); requests.clear(); const secondRequest = requests.tryBegin(); assert(secondRequest); expect(requests.owns(firstRequest)).toBe(false); expect(requests.owns(secondRequest)).toBe(true); expect(requests.tryBegin()).toBeNull();}); it("reports unavailable capture support without browser globals", () => { expect(snapShotUnavailableMessage(false)).toBe("Only available in the desktop app.");}); it("describes Niri setup without claiming a global shortcut is registered", () => { const state: DesktopSnapShotState = { mode: "portal", linuxBackend: "niri", shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: false, shortcutMessage: "Managed by Niri", message: null, }; expect(snapShotStatus(state, true)).toBe("Finish shortcut setup"); expect(snapShotStatus(state, true)).not.toContain("could not be registered"); expect(snapShotFeedbackUnavailableMessage(state)).toContain("aren't available on Niri");}); it("distinguishes Hyprland helper setup, action registration, and verified shortcut delivery", () => { const state: DesktopSnapShotState = { mode: "portal", linuxBackend: "hyprland", linuxDesktop: "hyprland", shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: false, shortcutMessage: "Connecting to Hyprland shortcuts…", message: null, hyprlandHelper: { status: "not-installed", message: "Install helper" }, }; expect(snapShotSetupButtonLabel(state)).toBe("Set up Hyprland capture"); expect(snapShotStatus(state, false)).toBe("Turn this on to set up snapshots."); expect(snapShotStatus(state, true)).toContain("Install the capture helper"); expect(snapShotFeedbackUnavailableMessage(state)).toContain("Install or update"); const ready = { ...state, hyprlandHelper: { status: "ready" as const, message: "Ready" }, linuxFeedbackAvailable: true, }; expect(snapShotSetupButtonLabel(ready)).toBe("Manage capture"); expect(snapShotShortcutStatus({ ...ready, shortcutPending: true })).not.toContain("permission"); expect(snapShotStatus({ ...ready, shortcutActionRegistered: true }, true)).toBe( "Use your shortcut from another app", ); expect(snapShotStatus({ ...ready, shortcutVerified: true }, true)).toBe("Ready to capture"); expect(snapShotFeedbackUnavailableMessage(ready)).toBeUndefined(); expect(snapShotAccessibilityUnavailableMessage(ready)).toBeUndefined();}); it("keeps unavailable capture distinct from the opt-in setup prompt", () => { const state: DesktopSnapShotState = { mode: "unavailable", shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: false, shortcutMessage: null, message: "Wayland is required.", }; expect(snapShotStatus(state, false)).toBe("Wayland is required.");}); it.each(["gnome-extension", "niri", "screenshot-portal", "picker"] as const)( "waits for opt-in before presenting %s setup requirements", (linuxBackend) => { const state: DesktopSnapShotState = { mode: "portal", linuxBackend, shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: false, shortcutMessage: "Shortcut permission needed", message: "Capture needs attention", gnomeExtension: { status: "not-installed", message: "Install the extension" }, }; expect(DEFAULT_CLIENT_SETTINGS.snapShotEnabled).toBe(false); expect(snapShotStatus(state, false)).toBe("Turn this on to set up snapshots."); expect(snapShotStatus(state, true)).toBe("Capture needs attention"); },); it("distinguishes saved shortcuts from observed delivery without making users repeat setup", () => { const state: DesktopSnapShotState = { mode: "portal", linuxBackend: "gnome-extension", shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: true, shortcutMessage: "Requested", message: null, gnomeExtension: { status: "enabled", message: "Running" }, }; expect(snapShotSetupSummary(state, true)).toBe("Shortcut saved"); expect(snapShotSetupButtonLabel(state)).toBe("Manage capture"); expect(snapShotSetupSummary({ ...state, shortcutVerified: true }, true)).toBe("Ready to capture"); expect(snapShotSetupButtonLabel({ ...state, shortcutVerified: true })).toBe("Manage capture"); expect(snapShotSetupButtonLabel({ ...state, shortcutRegistered: false })).toBe("Manage capture"); expect( snapShotSetupButtonLabel({ ...state, gnomeExtension: { status: "disabled", message: "Enable the extension" }, }), ).toBe("Set up GNOME capture"); expect(snapShotSetupSummary({ ...state, shortcutVerified: true }, false)).toContain( "Enable capture", ); expect( snapShotSetupSummary( { ...state, gnomeExtension: { status: "restart-required", message: "Sign out" }, shortcutVerified: true, }, true, ), ).toBe("Set up active-window snapshots"); expect( snapShotSetupSummary( { ...state, linuxBackend: "niri", gnomeExtension: undefined, shortcutRegistered: false }, true, ), ).toBe("Finish shortcut setup"); expect( snapShotSetupSummary( { ...state, linuxBackend: "picker", gnomeExtension: undefined, shortcutVerified: true }, true, ), ).toBe("Manual capture only — you'll choose a window each time"); expect( snapShotSetupSummary( { ...state, linuxBackend: "screenshot-portal", gnomeExtension: { status: "not-installed", message: "Optional extension" }, shortcutVerified: true, }, true, ), ).toBe("Ready to capture");}); it.each([ ["gnome", "GNOME"], ["kde", "KDE Plasma"], ["niri", "Niri"],] as const)( "names %s when setup cannot yet determine the capture backend", (linuxDesktop, name) => { const state: DesktopSnapShotState = { mode: "portal", linuxDesktop, shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: false, shortcutMessage: null, message: "Capability check failed", }; expect(snapShotSetupButtonLabel(state)).toBe(`Set up ${name} capture`); },); it("keeps picker limitations visible after shortcut verification without recommending a GNOME extension", () => { const state: DesktopSnapShotState = { mode: "portal", linuxBackend: "picker", shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: true, shortcutMessage: null, message: null, shortcutVerified: true, }; expect(snapShotStatus(state, true)).toContain("Manual capture only"); expect(snapShotDescription(state)).toContain("Automatic capture isn't available"); expect(snapShotFeedbackUnavailableMessage(state)).not.toContain("GNOME"); expect(snapShotAccessibilityUnavailableMessage(state)).toContain("only provides a screenshot"); expect( snapShotAccessibilityUnavailableMessage({ ...state, linuxBackend: "screenshot-portal" }), ).toContain("only provides a screenshot"); expect( snapShotAccessibilityUnavailableMessage({ ...state, linuxBackend: "kde" }), ).toBeUndefined(); expect(snapShotFeedbackUnavailableMessage({ ...state, linuxBackend: "kde" })).toContain( "capture helper", ); expect( snapShotFeedbackUnavailableMessage({ ...state, linuxBackend: "kde", linuxFeedbackAvailable: true, kdeHelper: { status: "ready", message: "Ready", feedbackAvailable: true }, }), ).toBeUndefined(); expect( snapShotStatus( { ...state, linuxBackend: "kde", kdeHelper: { status: "not-installed", message: "Install" } }, true, ), ).toContain("Install the capture helper");}); it("does not ask Niri users to repeat setup when its capture endpoint is available", () => { const state: DesktopSnapShotState = { mode: "portal", linuxBackend: "niri", shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: false, shortcutBinding: "Ctrl+Shift+2 { spawn ...; }", shortcutMessage: null, message: null, }; expect(snapShotStatus(state, true)).toBe("Use your shortcut from another app"); expect(snapShotSetupButtonLabel(state)).toBe("Manage capture");}); it("reports pending, denied, and assigned shortcuts without inferring consent from saved keys", () => { const state: DesktopSnapShotState = { mode: "portal", linuxBackend: "screenshot-portal", shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: false, shortcutPending: true, shortcutMessage: null, message: null, }; expect(snapShotStatus(state, true)).toContain("Waiting for shortcut permission"); expect(snapShotShortcutStatus(state)).toContain("Approve the shortcut permission prompt"); const denied = { ...state, shortcutPending: false, shortcutMessage: "Permission wasn't granted" }; expect(snapShotShortcutStatus(denied)).toBe("Permission wasn't granted"); const approved = { ...denied, shortcutRegistered: true, shortcutLabel: "Press <Shift><Control>2", shortcutMessage: "Desktop shortcut: Press <Shift><Control>2", }; expect(snapShotStatus(approved, true)).toBe("Ready to capture"); expect(snapShotShortcutStatus(approved)).toBeNull(); expect(snapShotShortcutStatus({ ...approved, shortcutPending: true })).toContain( "Approve the shortcut permission prompt", ); expect( snapShotShortcutStatus({ ...approved, shortcutRegistered: false, shortcutMessage: "Permission wasn't granted", }), ).toBe("Permission wasn't granted");}); it("hides macOS setup only while permissions and the shortcut are all in place", () => { const ready: DesktopSnapShotState = { mode: "direct", shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut, shortcutRegistered: true, shortcutMessage: null, message: null, macPermissions: { screenRecording: true, accessibility: true }, }; expect(snapShotSetupComplete(ready, true)).toBe(true); expect(snapShotSetupComplete({ ...ready, macPermissions: undefined }, true)).toBe(false); expect(snapShotSetupComplete({ ...ready, shortcutRegistered: false }, true)).toBe(false); const revoked = { ...ready, macPermissions: { screenRecording: true, accessibility: false }, message: "Allow Accessibility in System Settings, then restart T3 Code.", }; expect(snapShotSetupComplete(revoked, true)).toBe(false); expect(snapShotStatus(revoked, true)).toBe("Capture needs attention"); expect(snapShotSetupButtonLabel(revoked)).toBe("Continue setup"); expect(snapShotSetupComplete({ ...revoked, message: null }, false)).toBe(true); expect( snapShotSetupComplete( { ...ready, windows: true, macPermissions: undefined, shortcutRegistered: false }, true, ), ).toBe(true);});
import { assert, expect, it } from "vite-plus/test";
import { DEFAULT_CLIENT_SETTINGS, type DesktopSnapShotState } from "@t3tools/contracts";
import {
createRecordingRequestTracker,
snapShotStatus,
snapShotShortcutStatus,
snapShotUnavailableMessage,
snapShotSoundPatch,
snapShotFeedbackUnavailableMessage,
snapShotSetupSummary,
snapShotSetupButtonLabel,
snapShotSetupComplete,
snapShotDescription,
snapShotAccessibilityUnavailableMessage,
} from "./SnapShotSettings.logic";
it.each([
["off", { snapShotPlaySound: false }],
["soft-pop", { snapShotPlaySound: true, snapShotSound: "soft-pop" }],
["camera-shutter", { snapShotPlaySound: true, snapShotSound: "camera-shutter" }],
] as const)("maps %s to compatible capture settings", (sound, patch) => {
expect(snapShotSoundPatch(sound)).toEqual(patch);
});
it("offers effects only with a capable GNOME extension, explaining how to upgrade v1", () => {
const state: DesktopSnapShotState = {
mode: "portal",
linuxBackend: "gnome-extension",
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: true,
shortcutMessage: null,
message: null,
};
expect(snapShotFeedbackUnavailableMessage(state)).toContain("Update");
expect(
snapShotFeedbackUnavailableMessage({ ...state, linuxFeedbackAvailable: true }),
).toBeUndefined();
expect(snapShotFeedbackUnavailableMessage({ ...state, linuxBackend: "picker" })).toContain(
"aren't available",
);
expect(snapShotFeedbackUnavailableMessage({ ...state, mode: "direct" })).toBeUndefined();
});
it("ignores a stale request after a newer request starts", () => {
const requests = createRecordingRequestTracker();
const firstRequest = requests.tryBegin();
assert(firstRequest);
requests.clear();
const secondRequest = requests.tryBegin();
assert(secondRequest);
expect(requests.owns(firstRequest)).toBe(false);
expect(requests.owns(secondRequest)).toBe(true);
expect(requests.tryBegin()).toBeNull();
});
it("reports unavailable capture support without browser globals", () => {
expect(snapShotUnavailableMessage(false)).toBe("Only available in the desktop app.");
});
it("describes Niri setup without claiming a global shortcut is registered", () => {
const state: DesktopSnapShotState = {
mode: "portal",
linuxBackend: "niri",
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: false,
shortcutMessage: "Managed by Niri",
message: null,
};
expect(snapShotStatus(state, true)).toBe("Finish shortcut setup");
expect(snapShotStatus(state, true)).not.toContain("could not be registered");
expect(snapShotFeedbackUnavailableMessage(state)).toContain("aren't available on Niri");
});
it("distinguishes Hyprland helper setup, action registration, and verified shortcut delivery", () => {
const state: DesktopSnapShotState = {
mode: "portal",
linuxBackend: "hyprland",
linuxDesktop: "hyprland",
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: false,
shortcutMessage: "Connecting to Hyprland shortcuts…",
message: null,
hyprlandHelper: { status: "not-installed", message: "Install helper" },
};
expect(snapShotSetupButtonLabel(state)).toBe("Set up Hyprland capture");
expect(snapShotStatus(state, false)).toBe("Turn this on to set up snapshots.");
expect(snapShotStatus(state, true)).toContain("Install the capture helper");
expect(snapShotFeedbackUnavailableMessage(state)).toContain("Install or update");
const ready = {
...state,
hyprlandHelper: { status: "ready" as const, message: "Ready" },
linuxFeedbackAvailable: true,
};
expect(snapShotSetupButtonLabel(ready)).toBe("Manage capture");
expect(snapShotShortcutStatus({ ...ready, shortcutPending: true })).not.toContain("permission");
expect(snapShotStatus({ ...ready, shortcutActionRegistered: true }, true)).toBe(
"Use your shortcut from another app",
);
expect(snapShotStatus({ ...ready, shortcutVerified: true }, true)).toBe("Ready to capture");
expect(snapShotFeedbackUnavailableMessage(ready)).toBeUndefined();
expect(snapShotAccessibilityUnavailableMessage(ready)).toBeUndefined();
});
it("keeps unavailable capture distinct from the opt-in setup prompt", () => {
const state: DesktopSnapShotState = {
mode: "unavailable",
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: false,
shortcutMessage: null,
message: "Wayland is required.",
};
expect(snapShotStatus(state, false)).toBe("Wayland is required.");
});
it.each(["gnome-extension", "niri", "screenshot-portal", "picker"] as const)(
"waits for opt-in before presenting %s setup requirements",
(linuxBackend) => {
const state: DesktopSnapShotState = {
mode: "portal",
linuxBackend,
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: false,
shortcutMessage: "Shortcut permission needed",
message: "Capture needs attention",
gnomeExtension: { status: "not-installed", message: "Install the extension" },
};
expect(DEFAULT_CLIENT_SETTINGS.snapShotEnabled).toBe(false);
expect(snapShotStatus(state, false)).toBe("Turn this on to set up snapshots.");
expect(snapShotStatus(state, true)).toBe("Capture needs attention");
},
);
it("distinguishes saved shortcuts from observed delivery without making users repeat setup", () => {
const state: DesktopSnapShotState = {
mode: "portal",
linuxBackend: "gnome-extension",
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: true,
shortcutMessage: "Requested",
message: null,
gnomeExtension: { status: "enabled", message: "Running" },
};
expect(snapShotSetupSummary(state, true)).toBe("Shortcut saved");
expect(snapShotSetupButtonLabel(state)).toBe("Manage capture");
expect(snapShotSetupSummary({ ...state, shortcutVerified: true }, true)).toBe("Ready to capture");
expect(snapShotSetupButtonLabel({ ...state, shortcutVerified: true })).toBe("Manage capture");
expect(snapShotSetupButtonLabel({ ...state, shortcutRegistered: false })).toBe("Manage capture");
expect(
snapShotSetupButtonLabel({
...state,
gnomeExtension: { status: "disabled", message: "Enable the extension" },
}),
).toBe("Set up GNOME capture");
expect(snapShotSetupSummary({ ...state, shortcutVerified: true }, false)).toContain(
"Enable capture",
);
expect(
snapShotSetupSummary(
{
...state,
gnomeExtension: { status: "restart-required", message: "Sign out" },
shortcutVerified: true,
},
true,
),
).toBe("Set up active-window snapshots");
expect(
snapShotSetupSummary(
{ ...state, linuxBackend: "niri", gnomeExtension: undefined, shortcutRegistered: false },
true,
),
).toBe("Finish shortcut setup");
expect(
snapShotSetupSummary(
{ ...state, linuxBackend: "picker", gnomeExtension: undefined, shortcutVerified: true },
true,
),
).toBe("Manual capture only — you'll choose a window each time");
expect(
snapShotSetupSummary(
{
...state,
linuxBackend: "screenshot-portal",
gnomeExtension: { status: "not-installed", message: "Optional extension" },
shortcutVerified: true,
},
true,
),
).toBe("Ready to capture");
});
it.each([
["gnome", "GNOME"],
["kde", "KDE Plasma"],
["niri", "Niri"],
] as const)(
"names %s when setup cannot yet determine the capture backend",
(linuxDesktop, name) => {
const state: DesktopSnapShotState = {
mode: "portal",
linuxDesktop,
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: false,
shortcutMessage: null,
message: "Capability check failed",
};
expect(snapShotSetupButtonLabel(state)).toBe(`Set up ${name} capture`);
},
);
it("keeps picker limitations visible after shortcut verification without recommending a GNOME extension", () => {
const state: DesktopSnapShotState = {
mode: "portal",
linuxBackend: "picker",
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: true,
shortcutMessage: null,
message: null,
shortcutVerified: true,
};
expect(snapShotStatus(state, true)).toContain("Manual capture only");
expect(snapShotDescription(state)).toContain("Automatic capture isn't available");
expect(snapShotFeedbackUnavailableMessage(state)).not.toContain("GNOME");
expect(snapShotAccessibilityUnavailableMessage(state)).toContain("only provides a screenshot");
expect(
snapShotAccessibilityUnavailableMessage({ ...state, linuxBackend: "screenshot-portal" }),
).toContain("only provides a screenshot");
expect(
snapShotAccessibilityUnavailableMessage({ ...state, linuxBackend: "kde" }),
).toBeUndefined();
expect(snapShotFeedbackUnavailableMessage({ ...state, linuxBackend: "kde" })).toContain(
"capture helper",
);
expect(
snapShotFeedbackUnavailableMessage({
...state,
linuxBackend: "kde",
linuxFeedbackAvailable: true,
kdeHelper: { status: "ready", message: "Ready", feedbackAvailable: true },
}),
).toBeUndefined();
expect(
snapShotStatus(
{ ...state, linuxBackend: "kde", kdeHelper: { status: "not-installed", message: "Install" } },
true,
),
).toContain("Install the capture helper");
});
it("does not ask Niri users to repeat setup when its capture endpoint is available", () => {
const state: DesktopSnapShotState = {
mode: "portal",
linuxBackend: "niri",
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: false,
shortcutBinding: "Ctrl+Shift+2 { spawn ...; }",
shortcutMessage: null,
message: null,
};
expect(snapShotStatus(state, true)).toBe("Use your shortcut from another app");
expect(snapShotSetupButtonLabel(state)).toBe("Manage capture");
});
it("reports pending, denied, and assigned shortcuts without inferring consent from saved keys", () => {
const state: DesktopSnapShotState = {
mode: "portal",
linuxBackend: "screenshot-portal",
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: false,
shortcutPending: true,
shortcutMessage: null,
message: null,
};
expect(snapShotStatus(state, true)).toContain("Waiting for shortcut permission");
expect(snapShotShortcutStatus(state)).toContain("Approve the shortcut permission prompt");
const denied = { ...state, shortcutPending: false, shortcutMessage: "Permission wasn't granted" };
expect(snapShotShortcutStatus(denied)).toBe("Permission wasn't granted");
const approved = {
...denied,
shortcutRegistered: true,
shortcutLabel: "Press <Shift><Control>2",
shortcutMessage: "Desktop shortcut: Press <Shift><Control>2",
};
expect(snapShotStatus(approved, true)).toBe("Ready to capture");
expect(snapShotShortcutStatus(approved)).toBeNull();
expect(snapShotShortcutStatus({ ...approved, shortcutPending: true })).toContain(
"Approve the shortcut permission prompt",
);
expect(
snapShotShortcutStatus({
...approved,
shortcutRegistered: false,
shortcutMessage: "Permission wasn't granted",
}),
).toBe("Permission wasn't granted");
});
it("hides macOS setup only while permissions and the shortcut are all in place", () => {
const ready: DesktopSnapShotState = {
mode: "direct",
shortcut: DEFAULT_CLIENT_SETTINGS.snapShotShortcut,
shortcutRegistered: true,
shortcutMessage: null,
message: null,
macPermissions: { screenRecording: true, accessibility: true },
};
expect(snapShotSetupComplete(ready, true)).toBe(true);
expect(snapShotSetupComplete({ ...ready, macPermissions: undefined }, true)).toBe(false);
expect(snapShotSetupComplete({ ...ready, shortcutRegistered: false }, true)).toBe(false);
const revoked = {
...ready,
macPermissions: { screenRecording: true, accessibility: false },
message: "Allow Accessibility in System Settings, then restart T3 Code.",
};
expect(snapShotSetupComplete(revoked, true)).toBe(false);
expect(snapShotStatus(revoked, true)).toBe("Capture needs attention");
expect(snapShotSetupButtonLabel(revoked)).toBe("Continue setup");
expect(snapShotSetupComplete({ ...revoked, message: null }, false)).toBe(true);
expect(
snapShotSetupComplete(
{ ...ready, windows: true, macPermissions: undefined, shortcutRegistered: false },
true,
),
).toBe(true);
});