summaryrefslogtreecommitdiff
path: root/android-app/app/src/test/kotlin
diff options
context:
space:
mode:
Diffstat (limited to 'android-app/app/src/test/kotlin')
-rw-r--r--android-app/app/src/test/kotlin/org/terst/nav/track/TackDetectorGpxTest.kt25
1 files changed, 25 insertions, 0 deletions
diff --git a/android-app/app/src/test/kotlin/org/terst/nav/track/TackDetectorGpxTest.kt b/android-app/app/src/test/kotlin/org/terst/nav/track/TackDetectorGpxTest.kt
new file mode 100644
index 0000000..83ca259
--- /dev/null
+++ b/android-app/app/src/test/kotlin/org/terst/nav/track/TackDetectorGpxTest.kt
@@ -0,0 +1,25 @@
+package org.terst.nav.track
+
+import org.junit.Assert.assertEquals
+import org.junit.Assert.assertTrue
+import org.junit.Test
+
+class TackDetectorGpxTest {
+
+ @Test
+ fun `detects 6 tacks in April 22 test file`() {
+ val stream = javaClass.classLoader!!
+ .getResourceAsStream("nav_20260422_190543.gpx")
+ ?: error("GPX test file not found in test resources")
+ val points = GpxParser.parse(stream)
+ assertTrue("Expected >100 points, got ${points.size}", points.size > 100)
+
+ val tacks = TackDetector.detectTacks(points)
+ assertEquals(
+ "Expected 6 tacks in test track; got ${tacks.size}: ${
+ tacks.map { "%.0f→%.0f".format(it.cogBefore, it.cogAfter) }
+ }",
+ 6, tacks.size
+ )
+ }
+}