From 526b4c84fd87b93627690ae8f8bf6669d9e1cc29 Mon Sep 17 00:00:00 2001 From: Lilleman auf Larv Date: Tue, 29 Sep 2026 03:51:03 +0200 Subject: [PATCH] Test that disagreements holds every key disagreement builds, and a miss panics as an internal error --- datatype_test.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/datatype_test.go b/datatype_test.go index 9ba95aa..b08aac0 100644 --- a/datatype_test.go +++ b/datatype_test.go @@ -220,3 +220,20 @@ func TestNullColumn(t *testing.T) { t.Errorf("List() = %v, want the null column row.gone, which Fake accepts", f.List()) } } + +func TestDisagreementsHoldEveryKeyDisagreementBuilds(t *testing.T) { + kinds := []itemKind{kindText, kindReads, kindDeclares} + for _, fix := range kinds { + for _, other := range kinds[fix:] { + if other == kindText { + continue + } + for _, proven := range []bool{false, true} { + if disagreementFix(disagreementKey{fix, other, proven}) == nil { + t.Errorf("disagreementFix(%v, %v, %v) = nil", fix, other, proven) + } + } + } + } + mustPanic(t, "two text items", func() { disagreementFix(disagreementKey{kindText, kindText, false}) }) +}