Download src/hooks/gmail.windows.test.ts from SaylorTwift/openclaw: direct link, hf CLI and curl.
- Browser
- Download file 2.25 kB
-
https://huggingface.co/SaylorTwift/openclaw/resolve/main/src/hooks/gmail.windows.test.ts
- Command line
-
hf download hf://SaylorTwift/openclaw/src/hooks/gmail.windows.test.ts
-
curl -L -o gmail.windows.test.ts https://huggingface.co/SaylorTwift/openclaw/resolve/main/src/hooks/gmail.windows.test.ts
2.25 kB
| // Gmail Windows tests cover gog watcher command invocation on Windows. | |
| import path from "node:path"; | |
| import { describe, expect, it, vi } from "vitest"; | |
| import { getWindowsInstallRoots } from "../infra/windows-install-roots.js"; | |
| import { withMockedWindowsPlatform } from "../test-utils/vitest-spies.js"; | |
| const mocks = vi.hoisted(() => ({ | |
| resolveExecutable: vi.fn(), | |
| })); | |
| vi.mock("../infra/executable-path.js", () => ({ | |
| resolveExecutable: mocks.resolveExecutable, | |
| })); | |
| async function importGmailWithExecutable(executable: string) { | |
| vi.resetModules(); | |
| mocks.resolveExecutable.mockReset(); | |
| mocks.resolveExecutable.mockReturnValue(executable); | |
| return await import("./gmail.js"); | |
| } | |
| function expectedTrustedCmdExe(): string { | |
| return path.win32.join(getWindowsInstallRoots().systemRoot, "System32", "cmd.exe"); | |
| } | |
| describe("resolveGogServeInvocation on Windows", () => { | |
| it("wraps spaced gog .cmd paths in an outer cmd.exe command line", async () => { | |
| const { resolveGogServeInvocation } = await importGmailWithExecutable( | |
| "C:\\Program Files\\gog\\gog.cmd", | |
| ); | |
| await withMockedWindowsPlatform(async () => { | |
| const invocation = resolveGogServeInvocation([ | |
| "gmail", | |
| "watch", | |
| "serve", | |
| "--account", | |
| "me@example.com", | |
| ]); | |
| expect(invocation).toEqual({ | |
| command: expectedTrustedCmdExe(), | |
| args: [ | |
| "/d", | |
| "/s", | |
| "/c", | |
| '""C:\\Program Files\\gog\\gog.cmd" "gmail" "watch" "serve" "--account" "me@example.com""', | |
| ], | |
| windowsHide: true, | |
| windowsVerbatimArguments: true, | |
| }); | |
| }); | |
| }); | |
| it("quotes caret arguments for gog .cmd wrappers", async () => { | |
| const { resolveGogServeInvocation } = await importGmailWithExecutable("gog.cmd"); | |
| await withMockedWindowsPlatform(async () => { | |
| const invocation = resolveGogServeInvocation([ | |
| "gmail", | |
| "watch", | |
| "serve", | |
| "--label", | |
| "release/^1", | |
| ]); | |
| expect(invocation.args).toEqual([ | |
| "/d", | |
| "/s", | |
| "/c", | |
| '""gog.cmd" "gmail" "watch" "serve" "--label" "release/^1""', | |
| ]); | |
| expect(invocation.windowsVerbatimArguments).toBe(true); | |
| }); | |
| }); | |
| }); | |