Push-Zeitmail: Zeit nur in 15-Minuten-Schritten
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
7da4452bbd
commit
88854aa2b4
4 files changed
+33
-14
No files matched your search
@@ -90,10 +90,15 @@ test('GET speichert nie', async () => {
|
||||
assert.equal(ws.startTime, '')
|
||||
})
|
||||
|
||||
test('GET mit min=60 füllt das Feld vor, Unsinn nicht', async () => {
|
||||
test('GET: Auswahl in 15-Minuten-Schritten, min=90 vorausgewählt, sonst 1 Std', async () => {
|
||||
const t = token('open1')
|
||||
assert.match((await get(`/zeit/${t}?min=60`)).html, /name="minutes"[^>]*value="60"/)
|
||||
assert.match((await get(`/zeit/${t}?min=abc`)).html, /name="minutes"[^>]*value=""/)
|
||||
const html = (await get(`/zeit/${t}?min=90`)).html
|
||||
assert.match(html, /<select id="minutes" name="minutes"/)
|
||||
assert.equal((html.match(/<option /g) || []).length, 48)
|
||||
assert.match(html, /<option value="90" selected>1,5 Std<\/option>/)
|
||||
assert.doesNotMatch(html, /type="number"/)
|
||||
assert.match((await get(`/zeit/${t}?min=abc`)).html, /<option value="60" selected>1 Std<\/option>/)
|
||||
assert.match((await get(`/zeit/${t}?min=70`)).html, /<option value="60" selected>1 Std<\/option>/)
|
||||
})
|
||||
|
||||
test('POST speichert', async () => {
|
||||
@@ -107,10 +112,10 @@ test('POST speichert', async () => {
|
||||
})
|
||||
|
||||
test('POST mit ungültigen Minuten', async () => {
|
||||
for (const minutes of ['0', '721', '1.5', '']) {
|
||||
for (const minutes of ['0', '721', '1.5', '', '70', '735']) {
|
||||
const r = await post(`/zeit/${token('open3')}`, { minutes })
|
||||
assert.equal(r.status, 400, minutes)
|
||||
assert.match(r.html, /Bitte ganze Minuten zwischen 1 und 720 eingeben\./)
|
||||
assert.match(r.html, /Bitte eine Zeit in 15-Minuten-Schritten wählen\./)
|
||||
assert.match(r.html, /name="minutes"/)
|
||||
}
|
||||
assert.equal(fake.get('worksheets', 'open3').totalTime, 0)
|
||||
|
||||
Reference in new issue
Block a user