diff --git a/server/pruef-chat-anhaenge.mjs b/server/pruef-chat-anhaenge.mjs index c52bdee7..ca5beb7f 100644 --- a/server/pruef-chat-anhaenge.mjs +++ b/server/pruef-chat-anhaenge.mjs @@ -935,10 +935,23 @@ const GIF_B64 = "R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"; " sie liegt bei den Anhängen"); /* ---- Aus der Kiste nehmen: das Verschickte bleibt ---------------- */ - await dogi.seite.evaluate(() => { window.confirm = () => true; }); + /* DIE RUECKFRAGE WIRD BEANTWORTET, NICHT UMGANGEN. + + Hier stand `window.confirm = () => true` -- und das war richtig, + solange die Kiste einen nativen confirm() benutzte. Am 23.09.2026 + ist er durch den Hausdialog ersetzt worden; seither klickte die + Pruefung den Knopf, die Seite fragte, und niemand antwortete. + Ergebnis: zwei rote Zeilen an einer Stelle, an der nichts kaputt + war -- genau der Fall, vor dem der Kopf von helfer-nachfrage.mjs + seit dem 19.09.2026 warnt. Zum zweiten Mal, an einer neuen Stelle. + + `bestaetige` kennt beide Wege und beantwortet den, der wirklich + kommt. Damit prueft diese Zeile ab jetzt auch mit, DASS ueberhaupt + gefragt wird: Verschwindet die Rueckfrage eines Tages, laeuft der + Helfer in seine Frist und die Zeile wird rot. */ await dogi.seite.click("#gif-auf"); await dogi.seite.waitForTimeout(600); - await dogi.seite.click(".gif-kachel__weg"); + await bestaetige(dogi.seite, () => dogi.seite.click(".gif-kachel__weg")); await dogi.seite.waitForTimeout(1500); const restKacheln = await dogi.seite.locator(".gif-kachel").count(); ok(restKacheln === 0, `aus der Kiste genommen (${restKacheln} übrig)`); diff --git a/server/pruef-modi-katalog.mjs b/server/pruef-modi-katalog.mjs index 5c546526..a8537794 100644 --- a/server/pruef-modi-katalog.mjs +++ b/server/pruef-modi-katalog.mjs @@ -761,19 +761,35 @@ console.log(""); .map((z) => z.textContent.trim()).find((t) => t.includes("gehen an")) || ""); ok(nachWahl.includes("Marina"), "nach dem Klick steht es da: " + nachWahl); - const vorher = await seite.evaluate(() => document.querySelectorAll(".karte").length); + /* GEZAEHLT WERDEN AUFGABEN, NICHT KARTEN. + Seit dem 23.09.2026 fasst das Brett gleiche Aufgaben zu EINER + Karte zusammen ("0 von 8"). Eine neue Aufgabe erhoeht die + Kartenzahl also nur dann, wenn es noch keine gleichnamige gibt -- + sonst wandert sie in eine bestehende Karte hinein. Genau das + war die Absicht des Umbaus; eine Pruefung, die trotzdem Karten + zaehlt, misst ab da die alte Anordnung und nicht die Sache. + Jede Karte weist ihre Aufgaben aus: data-id (eine) oder + data-ids (mehrere). */ + const zaehleAufgaben = () => [...document.querySelectorAll(".karte")] + .reduce((n, k) => n + (k.dataset.ids || k.dataset.id || "") + .split(",").filter(Boolean).length, 0); + const vorher = await seite.evaluate(zaehleAufgaben); await seite.evaluate(() => { [...document.querySelectorAll(".vorlagenbrett__karte")][0] ?.querySelector("button")?.click(); }); await seite.waitForTimeout(1800); const danach = await seite.evaluate(() => ({ + aufgaben: [...document.querySelectorAll(".karte")] + .reduce((n, k) => n + (k.dataset.ids || k.dataset.id || "") + .split(",").filter(Boolean).length, 0), karten: document.querySelectorAll(".karte").length, fuerMarina: [...document.querySelectorAll(".karte")] .filter((k) => k.textContent.includes("Marina")).length, })); - ok(danach.karten === vorher + 1, - "die Aufgabe liegt auf dem Brett (" + vorher + " -> " + danach.karten + ")"); + ok(danach.aufgaben === vorher + 1, + "die Aufgabe liegt auf dem Brett (" + vorher + " -> " + danach.aufgaben + + " Aufgaben in " + danach.karten + " Karten)"); ok(danach.fuerMarina > 0, "und zwar bei Marina (" + danach.fuerMarina + ")"); /* ==== DIE BEWERBUNG AM BILDSCHIRM ENTSCHEIDEN (23.09.2026) ====== diff --git a/workspace/anruf-probe.html b/workspace/anruf-probe.html index 9e6fa05d..3e309773 100644 --- a/workspace/anruf-probe.html +++ b/workspace/anruf-probe.html @@ -16,15 +16,15 @@ verdeckt. Gefunden hat es pruef-struktur. Richtig sind `gate.css` (die Farbwerte des Hauses) und `haus.css`. --> - - + + - +