Temporaere Hilfsdatei aus dem Projekt entfernt

patch15.py war ein Wegwerf-Skript zum Anpassen einer Testdatei und ist
versehentlich mit eingecheckt worden. Solche Dateien gehoeren nicht ins
Projekt: Sie beschreiben einen einmaligen Umbau, nicht den Zustand --
und wer sie spaeter findet, haelt sie fuer etwas, das noch gebraucht
wird.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-08-25 17:35:07 +02:00
co-authored by Claude Opus 5
parent bd0346f785
commit c42fed7b27
-107
View File
@@ -1,107 +0,0 @@
# -*- coding: utf-8 -*-
import io
p = 'pruef-verwaltung-schmuck.mjs'
s = io.open(p, encoding='utf-8').read()
# --- Glas-Abschnitt: es traegt jetzt nur noch das Detailblatt Unschaerfe ---
alt = ''' console.log("\\n===== 2. TRAEGT ALLES GLAS, WORAUF GELESEN WIRD? =====");
const glas = await seite.evaluate(() => {
const pruefen = [".vw-karte", ".vw-filter-knopf", ".vw-wer"];
const raus = {};
for (const w of pruefen) {
const el = document.querySelector("#vw-bereich " + w);
if (!el) { raus[w] = "(nicht gefunden)"; continue; }
const st = getComputedStyle(el);
raus[w] = st.backdropFilter || st.webkitBackdropFilter || "keins";
}
return raus;
});
for (const [w, wert] of Object.entries(glas)) {
if (wert === "(nicht gefunden)") continue;
pruefe(` ${w} hat Rueckseiten-Unschaerfe`, /blur/.test(wert), wert.slice(0, 34));
}'''
neu = ''' console.log("\\n===== 2. BLEIBT DER TEXT VOM BILD GETRENNT? =====");
/* Frueher wurde hier "traegt alles Glas?" geprueft. Das war zu teuer:
Eine Rueckseiten-Unschaerfe kostet Rechenzeit PRO ELEMENT, und zwar
bei jeder Bewegung neu. Mit sechs Kacheln fiel die Bildrate auf
6,4 Bilder je Sekunde, bei echter Mausbewegung sogar auf 4,5.
Entscheidend ist nicht die Unschaerfe, sondern dass der Text nicht
auf dem Bild steht. Das leistet auch eine dichte Flaeche -- und die
kostet nichts. Genau das wird jetzt geprueft. */
const flaechen = await seite.evaluate(() => {
const el = document.querySelector("#vw-probe .vw-karte");
if (!el) return null;
const st = getComputedStyle(el);
return { hintergrund: st.backgroundImage, unschaerfe: st.backdropFilter };
});
pruefe("die Kachel hat eine eigene Flaeche unter dem Text",
flaechen && /gradient/.test(flaechen.hintergrund),
flaechen ? "Verlauf vorhanden" : "keine Kachel");
/* Das Detailblatt behaelt die Unschaerfe: Davon gibt es immer nur
genau eines, und es liegt gross ueber der Seite -- dort faellt die
Rechenzeit einmal an, nicht pro Listeneintrag. */
const blatt = await seite.evaluate(() => {
const el = document.querySelector(".vw-detail-blatt");
if (!el) return "(nicht auf der Seite)";
return getComputedStyle(el).backdropFilter || "keins";
});
if (blatt !== "(nicht auf der Seite)") {
pruefe("das Detailblatt behaelt seine Unschaerfe", /blur/.test(blatt), blatt.slice(0, 30));
}
/* Die Bildrate ist selbst ein Pruefpunkt. Ohne ihn waere jederzeit
ein weiterer huebscher Effekt dazugekommen, der die Seite still
wieder zaeh macht. */
const bildrate = await seite.evaluate(() => new Promise((fertig) => {
let n = 0;
const start = performance.now();
const zaehl = () => {
n++;
if (performance.now() - start < 1200) requestAnimationFrame(zaehl);
else fertig(n / ((performance.now() - start) / 1000));
};
requestAnimationFrame(zaehl);
}));
pruefe("die Seite laeuft in Ruhe fluessig (ueber 45 Bilder/s)",
bildrate > 45, bildrate.toFixed(1) + " Bilder/s");'''
assert alt in s, 'Glas-Abschnitt nicht gefunden'
s = s.replace(alt, neu, 1)
# --- Lampen-Abschnitt: sie ist bewusst abgeschaltet ---
alt2 = ''' pruefe("Buehne und Lampe stecken in einem isolierten Raum",
extra.raumIsoliert === "isolate", extra.raumIsoliert);'''
neu2 = ''' pruefe("Buehne und Lampe stecken in einem isolierten Raum",
extra.raumIsoliert === "isolate", extra.raumIsoliert);
/* Die Vollbild-Zeigerlampe ist ABGESCHALTET -- eine Entscheidung,
kein Versehen. Zusammen mit den Glasflaechen kostete sie zwei
Drittel der Bildrate: Jede ihrer Bewegungen zwang jede Flaeche
darueber zum Neurechnen.
Das Licht, das dem Zeiger folgt, gibt es weiterhin auf den Kacheln
selbst. Es ist billig, weil es nur die Kachel unter dem Zeiger
betrifft statt des ganzen Bildschirms. */
const lampeAus = await seite.evaluate(() =>
getComputedStyle(document.querySelector(".vw-lampe")).display);
pruefe("die Vollbild-Lampe ist bewusst aus", lampeAus === "none", lampeAus);'''
assert alt2 in s, 'Lampen-Abschnitt nicht gefunden'
s = s.replace(alt2, neu2, 1)
# --- Die alten Lampen-Pruefungen entfernen ---
for weg in [
''' pruefe("die Lampe beleuchtet, statt zu ueberdecken",
extra.mischung === "soft-light", extra.mischung);''',
''' pruefe("sie folgt dem Zeiger", extra.mx === "1050px" && extra.my === "380px",
extra.mx + " / " + extra.my);''',
''' pruefe("und war vor der ersten Zeigerbewegung aus", extra.lampeAn === true);''',
]:
if weg in s:
s = s.replace(weg, '', 1)
io.open(p, 'w', encoding='utf-8', newline='').write(s)
print('Test an die neue Aufteilung angepasst')