aboutsummaryrefslogtreecommitdiff
path: root/internal/engine/tick_values_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/engine/tick_values_test.go')
-rw-r--r--internal/engine/tick_values_test.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/internal/engine/tick_values_test.go b/internal/engine/tick_values_test.go
new file mode 100644
index 0000000..4c704bb
--- /dev/null
+++ b/internal/engine/tick_values_test.go
@@ -0,0 +1,20 @@
+package engine
+
+import "testing"
+
+// TestValuesEqualUncomparableDoesNotPanic: a YAML list/map flag value must not
+// panic a tick system when compared (== panics on uncomparable dynamic types).
+func TestValuesEqualUncomparableDoesNotPanic(t *testing.T) {
+ if !ValuesEqual([]any{1, 2}, []any{1, 2}) {
+ t.Fatal("equal slices should compare equal")
+ }
+ if ValuesEqual([]any{1, 2}, []any{1, 3}) {
+ t.Fatal("different slices should not compare equal")
+ }
+ if !ValuesEqual(map[string]any{"x": 1}, map[string]any{"x": 1}) {
+ t.Fatal("equal maps should compare equal")
+ }
+ if ValuesEqual(map[string]any{"x": 1}, map[string]any{"x": 2}) {
+ t.Fatal("different maps should not compare equal")
+ }
+}