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:
-107
@@ -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')
|
||||
Reference in New Issue
Block a user