Files
zonemaster.es/zonemaster-gui/e2e/FR16.e2e-spec.ts
Malin 8d4eaa1489 feat: add full Zonemaster stack with Docker and Spanish UI
- Clone all 5 Zonemaster component repos (LDNS, Engine, CLI, Backend, GUI)
- Dockerfile.backend: 8-stage multi-stage build LDNS→Engine→CLI→Backend
- Dockerfile.gui: Astro static build served via nginx
- docker-compose.yml: backend (internal) + frontend (port 5353)
- nginx.conf: root redirects to /es/, /api/ proxied to backend
- zonemaster-gui/config.ts: defaultLanguage set to 'es' (Spanish)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-21 08:19:24 +02:00

39 lines
1.4 KiB
TypeScript

import {test, expect} from './global-setup';
import {goToHome, mounted, setLang, showOptions} from './utils/app.utils';
test.describe('Zonemaster test FR16 - [The advanced view should have a text describing what undelegated means]', () => {
test.beforeEach(async ({page}) => {
await goToHome(page);
await setLang(page, 'en');
await mounted(page);
await showOptions(page);
});
test('should have a link to the proper faq answer', async ({page}) => {
await page.waitForTimeout(400);
const alert = page.locator('#advanced-options div[role="alert"]');
await expect(alert).toBeVisible();
await expect(alert.locator('a')).toHaveAttribute('href', '/en/faq/#undelegated');
});
test('should have a description text in multi languages', async ({page}) => {
const testSuite = [
{lang: 'en', text: 'undelegated'},
{lang: 'fr', text: 'non délégué'},
{lang: 'sv', text: 'odelegerat'},
];
for (const {lang, text} of testSuite) {
await setLang(page, lang);
await mounted(page);
await showOptions(page);
await page.waitForTimeout(400);
const alert = page.locator('#advanced-options div[role="alert"]');
await expect(alert.locator('a')).toContainText(text);
}
});
});