From 34f278d5f1ec9e5ba7ac98bbc54a4eb7bc7c5036 Mon Sep 17 00:00:00 2001 From: SeoFood Date: Tue, 13 Oct 2026 11:14:51 +0200 Subject: [PATCH 1/2] Link the Chrome Web Store listing on the extensions page --- src/lib/integrations.ts | 2 +- tests/extensions.spec.ts | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/lib/integrations.ts b/src/lib/integrations.ts index 4b5dcdd..ca63a1f 100644 --- a/src/lib/integrations.ts +++ b/src/lib/integrations.ts @@ -6,7 +6,7 @@ */ export const integrations = { browser: { - chromeWebStoreUrl: null as string | null, + chromeWebStoreUrl: "https://chromewebstore.google.com/detail/typewhisper/gamnkdngnfamiajnbeglodoaoaifbheh", firefoxAddonsUrl: null as string | null, }, raycast: { diff --git a/tests/extensions.spec.ts b/tests/extensions.spec.ts index b3ff259..12cbb27 100644 --- a/tests/extensions.spec.ts +++ b/tests/extensions.spec.ts @@ -28,11 +28,14 @@ for (const locale of ["en", "de"] as const) { await expect(page.locator(`nav a[href="#${id}"]`)).toBeVisible(); } - // The browser listings are not live yet: no links, a note instead. + // Chrome links its store listing; the Firefox listing is not live yet. const browser = page.getByTestId("extensions-browser"); - await expect(browser.getByTestId("extensions-soon-chrome")).toContainText(copy[locale].soon); + await expect(browser.getByTestId("extensions-link-chrome")).toHaveAttribute( + "href", + "https://chromewebstore.google.com/detail/typewhisper/gamnkdngnfamiajnbeglodoaoaifbheh", + ); await expect(browser.getByTestId("extensions-soon-firefox")).toContainText(copy[locale].soon); - await expect(browser.locator("a")).toHaveCount(0); + await expect(browser.locator("a")).toHaveCount(1); await expect(browser).toContainText("127.0.0.1"); await expect(page.getByTestId("extensions-link-raycast")).toHaveAttribute( From 064480b23e499c411b66f6766ba227de141a8828 Mon Sep 17 00:00:00 2001 From: SeoFood Date: Tue, 13 Oct 2026 11:16:21 +0200 Subject: [PATCH 2/2] Expect the Chrome Web Store URL in the unit test --- tests/extensions.test.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tests/extensions.test.ts b/tests/extensions.test.ts index 4f96fbb..219ef74 100644 --- a/tests/extensions.test.ts +++ b/tests/extensions.test.ts @@ -4,9 +4,12 @@ import test from "node:test"; import { integrations } from "../src/lib/integrations.ts"; -test("the browser store listings stay unlinked until they are live", () => { - // Set the URL once a listing is published; the page then links it. - assert.equal(integrations.browser.chromeWebStoreUrl, null); +test("the browser store listings are linked once they are live", () => { + assert.equal( + integrations.browser.chromeWebStoreUrl, + "https://chromewebstore.google.com/detail/typewhisper/gamnkdngnfamiajnbeglodoaoaifbheh", + ); + // Set the URL once the Firefox listing is published; the page then links it. assert.equal(integrations.browser.firefoxAddonsUrl, null); });