From 6605fca1796c6b6c9c175cbbcc840709cd98c167 Mon Sep 17 00:00:00 2001
From: Kevin Longe <273747162+kvlonge@users.noreply.github.com>
Date: Sun, 1 Nov 2026 16:56:14 +0000
Subject: [PATCH] docs(website): link SQLTide to its live homepage
Amp-Thread-ID: https://ampcode.com/threads/T-ede8de20-2143-49b4-be09-527940c285aa
---
website/public/index.html | 2 +-
website/src/components/Footer.astro | 2 +-
website/tests/docs.test.mjs | 3 +++
website/tests/site.test.mjs | 3 +++
4 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/website/public/index.html b/website/public/index.html
index c158ac6e..a791340e 100644
--- a/website/public/index.html
+++ b/website/public/index.html
@@ -127,7 +127,7 @@
Keep the rules close to the code.
Part of SQLStack
-
+
diff --git a/website/src/components/Footer.astro b/website/src/components/Footer.astro
index 45a8a2ca..a5bfc3da 100644
--- a/website/src/components/Footer.astro
+++ b/website/src/components/Footer.astro
@@ -12,7 +12,7 @@ import DefaultFooter from '@astrojs/starlight/components/Footer.astro';
diff --git a/website/tests/docs.test.mjs b/website/tests/docs.test.mjs
index 9721ba7b..70417f38 100644
--- a/website/tests/docs.test.mjs
+++ b/website/tests/docs.test.mjs
@@ -107,6 +107,9 @@ for (const colorScheme of ['light', 'dark']) {
await expect(page.getByRole('link', { name: 'by SQLStack', exact: true })).toHaveAttribute('href', 'https://sqlstack.io');
await expect(page.getByRole('link', { name: 'Part of SQLStack', exact: true })).toHaveAttribute('href', 'https://sqlstack.io');
await expect(page.getByRole('navigation', { name: 'SQLStack tools' }).getByRole('link')).toHaveText(['SQLBuild', 'SQLClean', 'SQLTide', 'Fensu']);
+ for (const [name, href] of Object.entries({ SQLBuild: 'https://sqlbuild.com', SQLClean: 'https://sqlclean.io', SQLTide: 'https://sqltide.io/', Fensu: '/' })) {
+ await expect(page.getByRole('navigation', { name: 'SQLStack tools' }).getByRole('link', { name, exact: true })).toHaveAttribute('href', href);
+ }
await expect(page.locator('.sqlstack-brand img:visible')).toHaveCount(1);
const results = await new AxeBuilder({ page }).withTags(['wcag2a', 'wcag2aa', 'wcag21aa', 'wcag22aa']).analyze();
expect(results.violations, route).toEqual([]);
diff --git a/website/tests/site.test.mjs b/website/tests/site.test.mjs
index 959a4b09..428e6a0c 100644
--- a/website/tests/site.test.mjs
+++ b/website/tests/site.test.mjs
@@ -59,6 +59,9 @@ for (const colorScheme of ['light', 'dark']) {
await expect(page.getByRole('link', { name: 'by SQLStack', exact: true })).toHaveAttribute('href', 'https://sqlstack.io');
await expect(page.getByRole('link', { name: 'Part of SQLStack', exact: true })).toHaveAttribute('href', 'https://sqlstack.io');
await expect(page.getByRole('navigation', { name: 'SQLStack tools' }).getByRole('link')).toHaveText(['SQLBuild', 'SQLClean', 'SQLTide', 'Fensu']);
+ for (const [name, href] of Object.entries({ SQLBuild: 'https://sqlbuild.com', SQLClean: 'https://sqlclean.io', SQLTide: 'https://sqltide.io/', Fensu: '/' })) {
+ await expect(page.getByRole('navigation', { name: 'SQLStack tools' }).getByRole('link', { name, exact: true })).toHaveAttribute('href', href);
+ }
await expect(page.locator('.sqlstack-brand img:visible')).toHaveCount(1);
const result = await new AxeBuilder({ page }).withTags(['wcag2a', 'wcag2aa', 'wcag21aa', 'wcag22aa']).analyze();
expect(result.violations).toEqual([]);