Skip to content

Commit 3586888

Browse files
committed
test: cover English-only blog discovery
1 parent 7018acc commit 3586888

2 files changed

Lines changed: 19 additions & 0 deletions

File tree

web/tests/agent-page-variants.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -393,6 +393,14 @@ describe("agent page variants", () => {
393393
expect(sitemapPaths).not.toContain("/de/docs/remote-tmux");
394394
});
395395

396+
test("limits English-only blog variants to their canonical routes", () => {
397+
for (const path of ["/blog/cmux-omo", "/blog/gpl"]) {
398+
expect(resolveAgentPageVariant(`${path}.md`)).not.toBeNull();
399+
expect(resolveAgentPageVariant(`/ja${path}.md`)).toBeNull();
400+
expect(resolveAgentPageVariant(`/de${path}.txt`)).toBeNull();
401+
}
402+
});
403+
396404
test("limits en-ja docs alternate links to live localized routes", () => {
397405
const path = featureWorkflowDocPathForRequest("/de/docs/vault");
398406
expect(path).toBe("/docs/vault");

web/tests/seo.test.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { describe, expect, test } from "bun:test";
22
import { NextRequest } from "next/server";
33
import { comparePages } from "../app/lib/compare-pages";
4+
import { blogPostsForLocale } from "../app/[locale]/components/blog-posts";
45
import sitemap from "../app/sitemap";
56
import { legalMetadata } from "../app/[locale]/(legal)/legal-metadata";
67
import middleware from "../proxy";
@@ -34,6 +35,16 @@ import { englishFallbackContentLocales } from "../i18n/locale-availability";
3435
import { locales } from "../i18n/routing";
3536

3637
describe("SEO metadata helpers", () => {
38+
test("omits English-only posts from localized blog navigation", () => {
39+
const englishSlugs = blogPostsForLocale("en").map((post) => post.slug);
40+
const japaneseSlugs = blogPostsForLocale("ja").map((post) => post.slug);
41+
42+
expect(englishSlugs).toContain("cmux-omo");
43+
expect(englishSlugs).toContain("gpl");
44+
expect(japaneseSlugs).not.toContain("cmux-omo");
45+
expect(japaneseSlugs).not.toContain("gpl");
46+
});
47+
3748
test("keeps canonical URLs locale-aware", () => {
3849
expect(canonicalUrl("en", "/docs")).toBe("https://cmux.com/docs");
3950
expect(canonicalUrl("ja", "/docs")).toBe("https://cmux.com/ja/docs");

0 commit comments

Comments
 (0)