46 lines
2.1 KiB
JavaScript
46 lines
2.1 KiB
JavaScript
import { test } from 'node:test'
|
|
import assert from 'node:assert/strict'
|
|
import { existsSync, readFileSync } from 'node:fs'
|
|
|
|
const root = (rel) => new URL(`../${rel}`, import.meta.url)
|
|
|
|
const V = '2026-10-02'
|
|
const FILES = [`public/rechtliches/avv-website-analyse-${V}.html`, `public/rechtliches/leistungsbeschreibung-website-analyse-${V}.html`]
|
|
|
|
test('Analyse-Rechtstexte: versionierte Dateien tragen die Fassung, keine Entwurfs- oder Prüfhinweise, keine Kommentare', () => {
|
|
for (const f of FILES) {
|
|
assert.ok(existsSync(root(f)), f)
|
|
const html = readFileSync(root(f), 'utf8')
|
|
assert.ok(html.includes(`Fassung ${V}`), f)
|
|
assert.doesNotMatch(html, /<!--/, f)
|
|
assert.doesNotMatch(html, /Entwurf/, f)
|
|
assert.doesNotMatch(html, /Prüfpunkt/, f)
|
|
}
|
|
assert.match(readFileSync(root(FILES[0]), 'utf8'), /<h2>12\. Haftung/)
|
|
})
|
|
|
|
test('Entwurfsseite ohne Fassung ist nicht mehr als Datei vorhanden', () => {
|
|
assert.ok(!existsSync(root('public/rechtliches/avv-website-analyse.html')))
|
|
assert.ok(!existsSync(root('public/rechtliches/leistungsbeschreibung-website-analyse.html')))
|
|
})
|
|
|
|
test('Portal: keine alten Formulierungen, AVV-Adresse kommt aus a.legal', () => {
|
|
const fn = readFileSync(root('public/analyse.js'), 'utf8')
|
|
for (const old of ['anonym', 'Cookie-Einstellungen', 'Die bisherigen Daten bleiben noch 60 Tage erhalten', 'Verarbeitung der Analysedaten gemäß Auftragsverarbeitungsvertrag', "AVV_URL = '/rechtliches/avv-website-analyse.html'"]) {
|
|
assert.ok(!fn.includes(old), old)
|
|
}
|
|
assert.doesNotMatch(fn, /AVV_URL/)
|
|
assert.match(fn, /a\.legal/)
|
|
})
|
|
|
|
test('Portal: Dev-Modus-Hinweis an der Analyse-Kachel', () => {
|
|
const fn = readFileSync(root('public/funktionen.js'), 'utf8')
|
|
assert.match(fn, /Im Dev-Modus wird nicht gemessen/)
|
|
assert.match(fn, /a\.devMode/)
|
|
})
|
|
|
|
test('Texte: Akzentfarbe wird beim Einschalten gewählt (kein späteres Portal-Setting behauptet)', () => {
|
|
// Geprüfte Fassung 2026-10-02: nur die Leistungsbeschreibung sagt es so; die AVV nennt die Akzentfarbe unter den Einstellungen
|
|
assert.match(readFileSync(root('docs/rechtliches/leistungsbeschreibung-website-analyse.md'), 'utf8'), /beim Einschalten wählt/)
|
|
})
|