Test met echte CalDAV-snapshot (dienst 4051) door volledige pipeline
This commit is contained in:
parent
34505be9b8
commit
c21d3dc837
2 changed files with 35 additions and 0 deletions
|
|
@ -3,6 +3,7 @@ package nl.eddydevink.buschauffeurswekker.caldav
|
|||
import java.time.LocalDateTime
|
||||
import java.time.ZoneId
|
||||
import java.time.ZonedDateTime
|
||||
import nl.eddydevink.buschauffeurswekker.core.ShiftPlanner
|
||||
import org.junit.Assert.assertEquals
|
||||
import org.junit.Assert.assertNull
|
||||
import org.junit.Test
|
||||
|
|
@ -125,6 +126,29 @@ class IcalTest {
|
|||
assertEquals("Dienst & meer", event.summary)
|
||||
}
|
||||
|
||||
@Test
|
||||
fun `echte serverresponse geeft de juiste wekkers`() {
|
||||
// Snapshot van de echte CalDAV-response (ebs_diensten-1, 15-10-2026, dienst 4051 om 06:18).
|
||||
val resource = javaClass.classLoader.getResourceAsStream("real_ebs_20261015.ics")!!
|
||||
.bufferedReader().readText()
|
||||
val event = Ical.firstTimedEvent(resource)!!
|
||||
assertEquals("4051", event.summary)
|
||||
assertEquals(
|
||||
LocalDateTime.of(2026, 10, 15, 6, 18),
|
||||
event.start.withZoneSameInstant(amsterdam).toLocalDateTime(),
|
||||
)
|
||||
val plan = ShiftPlanner.plan(event.start.withZoneSameInstant(amsterdam).toLocalDateTime())
|
||||
// Afgerond 06:15 → Opstaan 04:15, Wally 04:45, Vertrek 05:45.
|
||||
assertEquals(
|
||||
listOf(
|
||||
LocalDateTime.of(2026, 10, 15, 4, 15),
|
||||
LocalDateTime.of(2026, 10, 15, 4, 45),
|
||||
LocalDateTime.of(2026, 10, 15, 5, 45),
|
||||
),
|
||||
plan.map { it.time },
|
||||
)
|
||||
}
|
||||
|
||||
private fun buildVEvent(summary: String, dtstart: String, extra: String = ""): String {
|
||||
val extraLine = if (extra.isBlank()) "" else "$extra\n"
|
||||
return """
|
||||
|
|
|
|||
11
app/src/test/resources/real_ebs_20261015.ics
Normal file
11
app/src/test/resources/real_ebs_20261015.ics
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
BEGIN:VCALENDAR
|
||||
VERSION:2.0
|
||||
PRODID:-//scrapedienst//NL
|
||||
BEGIN:VEVENT
|
||||
UID:5a33190e-f55f-45fb-8849-3ca2a979e6b7
|
||||
DTSTAMP:20261001T150733Z
|
||||
SUMMARY:4051
|
||||
DTSTART;TZID=Europe/Amsterdam:20261015T061800
|
||||
DTEND;TZID=Europe/Amsterdam:20261015T124000
|
||||
END:VEVENT
|
||||
END:VCALENDAR
|
||||
Loading…
Reference in a new issue