Skip to content
This repository was archived by the owner on May 26, 2026. It is now read-only.

Commit 66283a8

Browse files
committed
Fix test determinism
1 parent d7255b7 commit 66283a8

1 file changed

Lines changed: 6 additions & 2 deletions

File tree

lib/src/test/kotlin/at/bitfire/synctools/mapping/tasks/builder/CompletedBuilderTest.kt

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,24 @@ package at.bitfire.synctools.mapping.tasks.builder
99
import android.content.ContentValues
1010
import android.content.Entity
1111
import androidx.core.content.contentValuesOf
12+
import at.bitfire.DefaultTimezoneRule
1213
import at.bitfire.ical4android.Task
1314
import at.bitfire.synctools.test.assertContentValuesEqual
1415
import net.fortuna.ical4j.model.property.Completed
1516
import org.dmfs.tasks.contract.TaskContract.Tasks
17+
import org.junit.Rule
1618
import org.junit.Test
1719
import org.junit.runner.RunWith
1820
import org.robolectric.RobolectricTestRunner
1921
import java.time.Instant
2022
import java.time.LocalDateTime
21-
import java.time.ZoneId
2223

2324
@RunWith(RobolectricTestRunner::class)
2425
class CompletedBuilderTest {
2526

27+
@get:Rule
28+
val tzRule = DefaultTimezoneRule("Europe/Berlin")
29+
2630
private val builder = CompletedBuilder()
2731

2832
@Test
@@ -63,7 +67,7 @@ class CompletedBuilderTest {
6367
)
6468
// floating date-time is interpreted in system default timezone
6569
val expectedTimestamp = LocalDateTime.of(2024, 6, 1, 12, 0, 0)
66-
.atZone(ZoneId.systemDefault()).toInstant().epochSecond * 1000
70+
.atZone(tzRule.defaultZoneId).toInstant().toEpochMilli()
6771
assertContentValuesEqual(contentValuesOf(
6872
Tasks.COMPLETED to expectedTimestamp,
6973
Tasks.COMPLETED_IS_ALLDAY to 0

0 commit comments

Comments
 (0)