Die letzten fuenf blinden Messungen bekommen einen Finger
Die Grundlinie der Fingerwache sinkt von 6 auf 1.
DIE SCHWEREN FAELLE
pruef-notizen, pruef-teamlage-karten, pruef-terminregel,
pruef-werdegang, pruef-befinden.
Bei diesen fuenf stand mitten im Ablauf ein
`setViewportSize({ width: 390 })`. Das aendert nur die Groesse --
`hasTouch` gehoert zum KONTEXT und ist beim Anlegen entschieden.
Nachtragen geht nicht; es braucht ein zweites Fenster.
DAS MUSTER, DAS FUER ALLE FUENF GETRAGEN HAT
const handyKontext = await browser.newContext({
viewport: { width: 390, height: 844 }, hasTouch: true, isMobile: true });
await handyKontext.addCookies(await kontext.cookies());
const handy = await handyKontext.newPage();
await handy.goto(seite.url(), { waitUntil: "networkidle" });
Drei Entscheidungen darin:
- Die Anmeldung wandert als Keks mit, statt sie zu wiederholen.
Eine zweite Anmeldung waere eine zweite Stelle, die veralten
kann.
- Die Adresse kommt von `seite.url()`. Sie ein zweites Mal
hinzuschreiben waere eine zweite Wahrheit darueber, welche
Seite gemessen wird.
- Das fruehere Zuruecksetzen auf 1280 px faellt weg. Die breite
Seite war nie schmal -- es gibt nichts zurueckzustellen.
Bei pruef-terminregel liessen sich die vier Schritte, die den
schwebenden Hinweis erzeugen, nicht uebernehmen: Sie werden im
neuen Kontext nachgefahren (oeffnen, "Neu", Datum eintragen).
ALLE FUENF DANACH GRUEN
pruef-notizen EXIT 0
pruef-teamlage-karten EXIT 0 (39 geprueft)
pruef-terminregel EXIT 0 (35 Pruefungen)
pruef-werdegang EXIT 0
pruef-befinden EXIT 0
Diese Seiten halten die Fingerregeln also schon ein. Es hatte nur
nie jemand nachgesehen.
EINES BLEIBT: pruef-grosscheck
Die Datei zu aendern waere ein Zweizeiler. Sie zu PRUEFEN hiesse,
206 Seiten ueber vier Rollen und zwei Bildschirmgroessen laufen zu
lassen -- das braucht Filipes Zusage. Eine Aenderung, die ich nicht
pruefen darf, liefere ich nicht aus. Die Grundlinie steht deshalb
auf 1 und nicht auf 0.
GEPRUEFT
pruef-fingermass 3 / 0, neun Gegenproben, Grundlinie 1
This commit is contained in:
@@ -307,9 +307,31 @@ melde("=== 4. Was man sieht ===");
|
||||
schwebende Satz auf dem, was folgt.
|
||||
|
||||
Gemessen wird die Ueberschneidung, nicht geschaetzt. */
|
||||
await seite.setViewportSize({ width: 390, height: 844 });
|
||||
await seite.waitForTimeout(500);
|
||||
const eng = await seite.evaluate(() => {
|
||||
/* EIN EIGENER KONTEXT MIT FINGER (29.09.2026).
|
||||
|
||||
Hier stand `seite.setViewportSize({ width: 390 })`. Das
|
||||
aendert nur die Groesse: `hasTouch` gehoert zum KONTEXT und
|
||||
laesst sich danach nicht mehr setzen. Ohne ihn meldet der
|
||||
Browser `pointer: fine`, und KEINE Regel aus
|
||||
`@media (pointer: coarse)` greift -- dort stehen die
|
||||
44-Pixel-Beruehrziele. Genau sie entscheiden hier mit:
|
||||
Hoehere Felder stehen enger beieinander, und ob ein
|
||||
schwebender Hinweis das naechste ueberdeckt, haengt daran.
|
||||
|
||||
Der kurze Weg zum Hinweis wird nachgefahren statt
|
||||
uebernommen -- vier Schritte, dieselben wie oben. */
|
||||
const handyKontext = await browser.newContext({
|
||||
viewport: { width: 390, height: 844 }, hasTouch: true, isMobile: true });
|
||||
await handyKontext.addCookies(await sicht.cookies());
|
||||
const handy = await handyKontext.newPage();
|
||||
await handy.goto(`http://127.0.0.1:${PORT}/workspace/bereich.html?b=content`,
|
||||
{ waitUntil: "networkidle" });
|
||||
await handy.waitForTimeout(1600);
|
||||
await handy.click("#neu-oeffnen");
|
||||
await handy.waitForTimeout(500);
|
||||
await handy.fill("#f-datum", HEUTE);
|
||||
await handy.waitForTimeout(500);
|
||||
const eng = await handy.evaluate(() => {
|
||||
const h = document.getElementById("hinweis-datum");
|
||||
if (!h || h.offsetHeight === 0) return { da: false };
|
||||
const a2 = h.getBoundingClientRect();
|
||||
@@ -323,8 +345,11 @@ melde("=== 4. Was man sieht ===");
|
||||
ok(eng.da, "am Handy steht der Hinweis auch da");
|
||||
ok(eng.da && eng.ueberdeckt === 0,
|
||||
`und liegt auf keinem anderen Feld (${eng.ueberdeckt} Ueberschneidungen)`);
|
||||
await seite.setViewportSize({ width: 1280, height: 900 });
|
||||
await seite.waitForTimeout(400);
|
||||
/* Das Handyfenster war ein eigener Kontext und geht hier zu.
|
||||
`seite` war nie schmal -- deshalb gibt es auch nichts
|
||||
zurueckzustellen; frueher stand hier ein `setViewportSize`
|
||||
auf 1280, das die Umstellung rueckgaengig machte. */
|
||||
await handyKontext.close();
|
||||
|
||||
ok(konsole.length === 0,
|
||||
konsole.length ? `Konsolenfehler: ${konsole[0]}` : "kein Konsolenfehler");
|
||||
|
||||
Reference in New Issue
Block a user