Test: Szene bei Stufe 3 prüft Arne wirklich nach seinem Status
Der Test "die Szene zeigt Arne nach seinem Status" prüfte bisher nur die Zahl im Schild und die Abruf-Anzahl. Er prüft jetzt bei Stufe 3 data-hk-arne, hk-arne-weg, die drei hk-kl-ruht, den Marker hk-alarm und hk-steht für arbeitet, leerlauf, fehler und angehalten. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
2c0553a6b2
commit
3c44c42681
1 file changed
+18
-1
@@ -649,9 +649,26 @@ test('Stufe 3: ?bot= (Einzelansicht) ruft nichts ab, zeigt dieselbe ehrliche Aus
|
|||||||
|
|
||||||
test('Stufe 3: die Zahl im Schild kommt weiter aus den Kennzahlen (kpis.botLeads); die Szene zeigt Arne nach seinem Status', async () => {
|
test('Stufe 3: die Zahl im Schild kommt weiter aus den Kennzahlen (kpis.botLeads); die Szene zeigt Arne nach seinem Status', async () => {
|
||||||
const api = fakeApi()
|
const api = fakeApi()
|
||||||
const ui = await start(api, { stufe: 3, kpis: { botLeads: 0 }, workers: { arne: { status: 'arbeitet', task: '', lastTs: null, connected: true, counters: {} } } })
|
const arne = (status) => ({ arne: { status, task: '', lastTs: null, connected: true, counters: {} } })
|
||||||
|
const stand = (ui) => ({
|
||||||
|
attr: nodes(ui.tree(), (n) => n.props && n.props['data-hk-arne'] !== undefined).map((n) => n.props['data-hk-arne']),
|
||||||
|
weg: byClass(ui.tree(), 'hk-arne-weg').length, ruht: byClass(ui.tree(), 'hk-kl-ruht').length,
|
||||||
|
alarm: byClass(ui.tree(), 'hk-alarm').length, steht: byClass(ui.tree(), 'hk-steht').length,
|
||||||
|
})
|
||||||
|
const ui = await start(api, { stufe: 3, kpis: { botLeads: 0 }, workers: arne('arbeitet') })
|
||||||
try {
|
try {
|
||||||
assert.equal(textOf(byClass(ui.tree(), 'hk-kl-zahl')[0]), '0')
|
assert.equal(textOf(byClass(ui.tree(), 'hk-kl-zahl')[0]), '0')
|
||||||
|
// arbeitet: Arnes Ablauf-Schleife läuft, nichts ruht, kein Alarm
|
||||||
|
assert.deepEqual(stand(ui), { attr: ['arbeitet'], weg: 1, ruht: 0, alarm: 0, steht: 0 })
|
||||||
|
// leerlauf: Arne sitzt am Pult, die drei Dinge (Stempel, Rohrpost, Schublade) ruhen
|
||||||
|
ui.setProps({ workers: arne('leerlauf') }); await settle()
|
||||||
|
assert.deepEqual(stand(ui), { attr: ['leerlauf'], weg: 0, ruht: 3, alarm: 0, steht: 0 })
|
||||||
|
// fehler: roter Marker
|
||||||
|
ui.setProps({ workers: arne('fehler') }); await settle()
|
||||||
|
assert.deepEqual(stand(ui), { attr: ['fehler'], weg: 0, ruht: 3, alarm: 1, steht: 0 })
|
||||||
|
// Hustler angehalten: die ganze Szene steht still
|
||||||
|
ui.setProps({ paused: true }); await settle()
|
||||||
|
assert.equal(stand(ui).steht, 1)
|
||||||
assert.equal(api.calls.length, 0)
|
assert.equal(api.calls.length, 0)
|
||||||
} finally { ui.end() }
|
} finally { ui.end() }
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in new issue
Block a user