fix(locale): align all English MDX page links and add automated links validation test to prevent language drift
All checks were successful
Build & Deploy / 🔍 Prepare (push) Successful in 18s
Build & Deploy / 🧪 QA (push) Successful in 1m6s
Build & Deploy / 🏗️ Build (push) Successful in 2m44s
Build & Deploy / 🚀 Deploy (push) Successful in 28s
Build & Deploy / 🧪 Post-Deploy Verification (push) Successful in 43s
Build & Deploy / 🔔 Notify (push) Successful in 1s
All checks were successful
Build & Deploy / 🔍 Prepare (push) Successful in 18s
Build & Deploy / 🧪 QA (push) Successful in 1m6s
Build & Deploy / 🏗️ Build (push) Successful in 2m44s
Build & Deploy / 🚀 Deploy (push) Successful in 28s
Build & Deploy / 🧪 Post-Deploy Verification (push) Successful in 43s
Build & Deploy / 🔔 Notify (push) Successful in 1s
This commit is contained in:
@@ -12,7 +12,7 @@ layout: "fullBleed"
|
||||
backgroundImage={{ url: '/assets/photos/DSC08653.JPG' }}
|
||||
alignment="center"
|
||||
ctaLabel="Request a project"
|
||||
ctaHref="/en/kontakt"
|
||||
ctaHref="/en/contact"
|
||||
/>
|
||||
|
||||
<div className="container px-4 max-w-7xl mx-auto py-16">
|
||||
@@ -77,5 +77,5 @@ layout: "fullBleed"
|
||||
title="Looking for a trenchless solution?"
|
||||
text="We would be happy to advise you on the possibilities of horizontal directional drilling for your project."
|
||||
buttonText="Contact us"
|
||||
buttonLink="/en/kontakt"
|
||||
buttonLink="/en/contact"
|
||||
/>
|
||||
|
||||
@@ -12,7 +12,7 @@ layout: "fullBleed"
|
||||
backgroundImage={{ url: '/assets/photos/DSC01129.JPG' }}
|
||||
alignment="center"
|
||||
ctaLabel="Request a project"
|
||||
ctaHref="/en/kontakt"
|
||||
ctaHref="/en/contact"
|
||||
/>
|
||||
|
||||
<div className="container px-4 max-w-7xl mx-auto py-16">
|
||||
@@ -75,5 +75,5 @@ layout: "fullBleed"
|
||||
title="Are you planning an FTTX expansion?"
|
||||
text="We are happy to advise you on all aspects of FTTX and fiber optic expansion."
|
||||
buttonText="Contact us"
|
||||
buttonLink="/en/kontakt"
|
||||
buttonLink="/en/contact"
|
||||
/>
|
||||
|
||||
@@ -12,7 +12,7 @@ layout: "fullBleed"
|
||||
backgroundImage={{ url: '/assets/photos/DSC01123.JPG' }}
|
||||
alignment="center"
|
||||
ctaLabel="Request a project"
|
||||
ctaHref="/en/kontakt"
|
||||
ctaHref="/en/contact"
|
||||
/>
|
||||
|
||||
<div className="container px-4 max-w-7xl mx-auto py-16">
|
||||
@@ -79,5 +79,5 @@ layout: "fullBleed"
|
||||
title="Do you have a specific project?"
|
||||
text="We would be happy to advise you on all questions regarding cable civil engineering and line laying."
|
||||
buttonText="Contact us"
|
||||
buttonLink="/en/kontakt"
|
||||
buttonLink="/en/contact"
|
||||
/>
|
||||
|
||||
@@ -100,6 +100,6 @@ layout: "fullBleed"
|
||||
title="Speculative Application (m/f/d)"
|
||||
description="Can you imagine taking on a long-term challenge in our company but can't find a suitable job offer? Apply speculatively."
|
||||
ctaLabel="To the contact form"
|
||||
ctaHref="/en/kontakt"
|
||||
ctaHref="/en/contact"
|
||||
theme="dark"
|
||||
/>
|
||||
|
||||
@@ -11,7 +11,7 @@ layout: "fullBleed"
|
||||
description="As a full-service partner in the field of cable civil engineering, we cover the entire spectrum of modern infrastructure projects."
|
||||
videoUrl="/assets/videos/web/hero-bohrung.mp4"
|
||||
linkText="Get in Touch"
|
||||
linkHref="/en/kontakt"
|
||||
linkHref="/en/contact"
|
||||
secondaryCtaLabel="View References"
|
||||
secondaryCtaHref="/en/#referenzen"
|
||||
/>
|
||||
@@ -20,7 +20,7 @@ layout: "fullBleed"
|
||||
badge="Core Competencies"
|
||||
title="Precision & Performance"
|
||||
ctaLabel="Request a project"
|
||||
ctaHref="/en/kontakt"
|
||||
ctaHref="/en/contact"
|
||||
items={[
|
||||
{
|
||||
title: "Cable Construction",
|
||||
|
||||
@@ -11,7 +11,7 @@ layout: "fullBleed"
|
||||
description="Get to know the E-TIB Group at the leading industry trade fairs."
|
||||
videoUrl="/assets/videos/web/hero-bahnkreuzung.mp4"
|
||||
linkText="Get in Touch"
|
||||
linkHref="/en/kontakt"
|
||||
linkHref="/en/contact"
|
||||
/>
|
||||
|
||||
<div id="termine">
|
||||
|
||||
@@ -12,7 +12,7 @@ layout: "fullBleed"
|
||||
backgroundImage={{ url: '/assets/photos/DJI_0048.JPG' }}
|
||||
alignment="center"
|
||||
ctaLabel="Request a project"
|
||||
ctaHref="/en/kontakt"
|
||||
ctaHref="/en/contact"
|
||||
/>
|
||||
|
||||
<div className="container px-4 max-w-7xl mx-auto py-16">
|
||||
@@ -75,5 +75,5 @@ layout: "fullBleed"
|
||||
title="Do you need planning security?"
|
||||
text="Let's talk about your project. We are at your side with our engineering knowledge."
|
||||
buttonText="Contact us"
|
||||
buttonLink="/en/kontakt"
|
||||
buttonLink="/en/contact"
|
||||
/>
|
||||
|
||||
@@ -86,5 +86,5 @@ layout: "fullBleed"
|
||||
title="Become part of our team"
|
||||
text="We are always looking for motivated talents for exciting infrastructure projects."
|
||||
buttonText="View open positions"
|
||||
buttonLink="/en/karriere"
|
||||
buttonLink="/en/career"
|
||||
/>
|
||||
|
||||
@@ -11,7 +11,7 @@ layout: "fullBleed"
|
||||
description="Since 2015, we have been growing continuously to meet the demands of the energy transition and digitalization. As a corporate group, we pool specialized expertise under one roof."
|
||||
videoUrl="/assets/videos/web/hero-bahnkreuzung.mp4"
|
||||
linkText="Open Positions"
|
||||
linkHref="/en/karriere"
|
||||
linkHref="/en/career"
|
||||
secondaryCtaLabel="Discover Company"
|
||||
secondaryCtaHref="#structure"
|
||||
/>
|
||||
@@ -128,5 +128,5 @@ layout: "fullBleed"
|
||||
title="Ready for Your Project?"
|
||||
description="We are always looking for new challenges and strong partners. Contact us for a non-binding consultation on your project."
|
||||
ctaLabel="Contact Us Now"
|
||||
ctaHref="/en/kontakt"
|
||||
ctaHref="/en/contact"
|
||||
/>
|
||||
|
||||
@@ -12,7 +12,7 @@ layout: "fullBleed"
|
||||
backgroundImage={{ url: '/assets/photos/DSC08653.JPG' }}
|
||||
alignment="center"
|
||||
ctaLabel="Request a project"
|
||||
ctaHref="/en/kontakt"
|
||||
ctaHref="/en/contact"
|
||||
/>
|
||||
|
||||
<div className="container px-4 max-w-7xl mx-auto py-16">
|
||||
@@ -77,5 +77,5 @@ layout: "fullBleed"
|
||||
title="Are you facing high documentation requirements?"
|
||||
text="Contact us for professional surveying and GIS services."
|
||||
buttonText="Contact us"
|
||||
buttonLink="/en/kontakt"
|
||||
buttonLink="/en/contact"
|
||||
/>
|
||||
|
||||
26
tests/mdx-links.test.ts
Normal file
26
tests/mdx-links.test.ts
Normal file
@@ -0,0 +1,26 @@
|
||||
import { describe, it, expect } from 'vitest';
|
||||
import fs from 'fs';
|
||||
import path from 'path';
|
||||
|
||||
describe('English MDX Content Links', () => {
|
||||
it('should not contain German slug routes like /en/kontakt or /en/karriere', () => {
|
||||
const enContentDir = path.join(process.cwd(), 'content', 'en');
|
||||
const files = fs.readdirSync(enContentDir).filter(f => f.endsWith('.mdx'));
|
||||
|
||||
const forbiddenLinks = ['/en/kontakt', '/en/karriere'];
|
||||
const infractions: string[] = [];
|
||||
|
||||
files.forEach(file => {
|
||||
const filePath = path.join(enContentDir, file);
|
||||
const content = fs.readFileSync(filePath, 'utf8');
|
||||
|
||||
forbiddenLinks.forEach(link => {
|
||||
if (content.includes(link)) {
|
||||
infractions.push(`${file} contains forbidden link "${link}"`);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
expect(infractions).toEqual([]);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user