Webshop-Test: Reiter-Panels abwarten (Node 20 lädt import() langsamer)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
bf308a75ae
commit
ce84fc849a
1 file changed
+13
-2
+13
-2
@@ -349,6 +349,17 @@ test('ordered ohne Rückkehr: kein „Danke!“; scheitert „Zahlung fortsetzen
|
||||
},
|
||||
))
|
||||
|
||||
// Wartet, bis ein dynamisch geladenes Reiter-Modul sein Panel gezeichnet hat (Node 20 laedt import() langsamer als Node 24)
|
||||
async function panelText(fx, root, sel) {
|
||||
for (let i = 0; i < 100; i += 1) {
|
||||
const t = fx.text(fx.finde(root, sel))
|
||||
if (t !== '') return t
|
||||
await fx.ruhe()
|
||||
await new Promise((r) => setTimeout(r, 5))
|
||||
}
|
||||
return fx.text(fx.finde(root, sel))
|
||||
}
|
||||
|
||||
/* ------------------------------------------------------------------ Reiter --- */
|
||||
test('Zustand active: fünf Reiter in fester Reihenfolge, Übersicht offen; kein Hinweis-Banner', mitDom(welt1('active', status('active')), undefined, async (fx) => {
|
||||
const root = await oeffne(fx)
|
||||
@@ -357,7 +368,7 @@ test('Zustand active: fünf Reiter in fester Reihenfolge, Übersicht offen; kein
|
||||
assert.deepEqual(knoepfe.map((k) => k.dataset.reiter), ['uebersicht', 'artikel', 'bestellungen', 'einstellungen', 'rechtliches'])
|
||||
assert.deepEqual(knoepfe.map((k) => k.getAttribute('aria-selected')), ['true', 'false', 'false', 'false', 'false'])
|
||||
assert.equal(fx.finde(root, '[role="tablist"]').getAttribute('aria-label'), 'Bereiche des Webshops')
|
||||
assert.notEqual(fx.text(fx.finde(root, '[role="tabpanel"]')), '', 'die Übersicht zeichnet ihr Panel')
|
||||
assert.notEqual(await panelText(fx, root, '[role="tabpanel"]'), '', 'die Übersicht zeichnet ihr Panel')
|
||||
assert.equal(fx.finde(root, '[data-hinweis]'), null)
|
||||
assert.deepEqual(REITER.map((r) => r.key), ['uebersicht', 'artikel', 'bestellungen', 'einstellungen', 'rechtliches'])
|
||||
}))
|
||||
@@ -406,7 +417,7 @@ test('Die echten Reiter-Module werden beim Wählen geladen', mitDom(welt1('activ
|
||||
for (const key of ['artikel', 'bestellungen', 'einstellungen', 'rechtliches', 'uebersicht']) {
|
||||
await fx.klick(fx.finde(root, `#sh-tab-${key}`))
|
||||
await fx.ruhe()
|
||||
assert.notEqual(fx.text(fx.finde(root, '#sh-panel')), '', `${key} zeichnet sein Panel (Platzhalter oder echter Inhalt)`)
|
||||
assert.notEqual(await panelText(fx, root, '#sh-panel'), '', `${key} zeichnet sein Panel (Platzhalter oder echter Inhalt)`)
|
||||
}
|
||||
for (const r of REITER) assert.equal(typeof (await r.laden()).render, 'function', `${r.key} exportiert render`)
|
||||
}))
|
||||
|
||||
Reference in new issue
Block a user