summaryrefslogtreecommitdiff
path: root/android-app/app/src/test
diff options
context:
space:
mode:
authorPeter Stone <thepeterstone@gmail.com>2026-04-06 06:49:34 +0000
committerPeter Stone <thepeterstone@gmail.com>2026-04-06 06:49:34 +0000
commitc8a1e81faec6663b258898c109db1f63e57b07eb (patch)
tree717073abfc8f830980d135d994eab922cafec688 /android-app/app/src/test
parent2cce533490baa4fe0d14f8541be1375e8069b164 (diff)
feat(ui): wire redesigned instrument sheet — InstrumentHandler rewrite + MainActivity
InstrumentHandler: direction arrows (SKY/OCEAN palettes), WaveView state, metres→feet conversion, bearing formatting, all helpers top-level for TDD. MainActivity: setupHandlers wires all new view refs; observeDataSources passes cogBearingDeg, twsBearingDeg, raw metres to handler; depth collector wired from nmeaDepthDataFlow. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'android-app/app/src/test')
-rw-r--r--android-app/app/src/test/kotlin/org/terst/nav/ui/InstrumentHandlerTest.kt39
1 files changed, 39 insertions, 0 deletions
diff --git a/android-app/app/src/test/kotlin/org/terst/nav/ui/InstrumentHandlerTest.kt b/android-app/app/src/test/kotlin/org/terst/nav/ui/InstrumentHandlerTest.kt
new file mode 100644
index 0000000..a749ba2
--- /dev/null
+++ b/android-app/app/src/test/kotlin/org/terst/nav/ui/InstrumentHandlerTest.kt
@@ -0,0 +1,39 @@
+package org.terst.nav.ui
+
+import org.junit.Assert.assertEquals
+import org.junit.Test
+import java.util.Locale
+
+class InstrumentHandlerTest {
+
+ @Test
+ fun `metresToFeet converts correctly`() {
+ assertEquals(3.28f, metresToFeet(1.0).toFloat(), 0.01f)
+ }
+
+ @Test
+ fun `metresToFeet zero returns zero`() {
+ assertEquals(0f, metresToFeet(0.0).toFloat(), 0.001f)
+ }
+
+ @Test
+ fun `formatFt formats to one decimal`() {
+ val result = formatFt(3.28084, Locale.US)
+ assertEquals("3.3", result)
+ }
+
+ @Test
+ fun `formatBearing appends degree symbol`() {
+ assertEquals("275°", formatBearing(275.0, Locale.US))
+ }
+
+ @Test
+ fun `formatBearing rounds to zero decimals`() {
+ assertEquals("123°", formatBearing(123.4, Locale.US))
+ }
+
+ @Test
+ fun `formatPeriod appends s`() {
+ assertEquals("· 14s", formatPeriod(14.0, Locale.US))
+ }
+}