From ec10d85591b80564aa13ceeaa57577803805188c Mon Sep 17 00:00:00 2001 From: ajet Date: Tue, 4 Nov 2025 15:11:24 -1000 Subject: [PATCH] test coverage only by PBT --- list/list_test.go | 70 +++++++++++++++++++++++++---------------------- 1 file changed, 37 insertions(+), 33 deletions(-) diff --git a/list/list_test.go b/list/list_test.go index 017fdae..e63439b 100644 --- a/list/list_test.go +++ b/list/list_test.go @@ -6,39 +6,39 @@ import ( "testing" ) -func TestListLen(t *testing.T) { - assert.Equal(t, 0, Empty().Len(), "should insert at head") - assert.Equal(t, 1, Empty().Conj(1).Len(), "should insert at head") - assert.Equal(t, 2, Empty().Conj(1).Conj(2).Len(), "should insert at head") -} - -func TestListString(t *testing.T) { - assert.Equal(t, "()", Empty().String(), "should insert at head") -} - -func TestListConj(t *testing.T) { - var l IList - assert.Equal(t, "()", Empty().String(), "should insert at head") - l = New(5) - assert.Equal(t, "(5)", l.String(), "should insert at head") - l = Empty().Conj(4) - assert.Equal(t, "(4)", l.String(), "should insert at head") -} - -func TestListFirst(t *testing.T) { - l := Empty().Conj(5).Conj(6).Conj(7) - assert.Equal(t, 7, l.First(), "should return first element") - assert.Equal(t, nil, Empty().First(), "should return nil") -} - -func TestListRest(t *testing.T) { - l := Empty().Conj(5).Conj(6).Conj(7) - assert.Equal(t, "(6 5)", l.Rest().String(), "should return rest sublist") - assert.Equal(t, "(5)", l.Rest().Rest().String(), "should return rest sublist") - assert.Equal(t, "()", l.Rest().Rest().Rest().String(), "should return rest sublist") - assert.Equal(t, Empty(), Empty().Rest(), "should return rest sublist") - assert.Equal(t, Empty(), Empty().Rest().Rest(), "should return rest sublist") -} +// func TestListLen(t *testing.T) { +// assert.Equal(t, 0, Empty().Len(), "should insert at head") +// assert.Equal(t, 1, Empty().Conj(1).Len(), "should insert at head") +// assert.Equal(t, 2, Empty().Conj(1).Conj(2).Len(), "should insert at head") +// } +// +// func TestListString(t *testing.T) { +// assert.Equal(t, "()", Empty().String(), "should insert at head") +// } +// +// func TestListConj(t *testing.T) { +// var l IList +// assert.Equal(t, "()", Empty().String(), "should insert at head") +// l = New(5) +// assert.Equal(t, "(5)", l.String(), "should insert at head") +// l = Empty().Conj(4) +// assert.Equal(t, "(4)", l.String(), "should insert at head") +// } +// +// func TestListFirst(t *testing.T) { +// l := Empty().Conj(5).Conj(6).Conj(7) +// assert.Equal(t, 7, l.First(), "should return first element") +// assert.Equal(t, nil, Empty().First(), "should return nil") +// } +// +// func TestListRest(t *testing.T) { +// l := Empty().Conj(5).Conj(6).Conj(7) +// assert.Equal(t, "(6 5)", l.Rest().String(), "should return rest sublist") +// assert.Equal(t, "(5)", l.Rest().Rest().String(), "should return rest sublist") +// assert.Equal(t, "()", l.Rest().Rest().Rest().String(), "should return rest sublist") +// assert.Equal(t, Empty(), Empty().Rest(), "should return rest sublist") +// assert.Equal(t, Empty(), Empty().Rest().Rest(), "should return rest sublist") +// } // generative tests func ListLengthProperty(t *testing.T) { @@ -56,6 +56,10 @@ func ListLengthProperty(t *testing.T) { } myList = myList.Rest() }, + "stringify": func(t *rapid.T) { + myList.String() + }, + "": func(t *rapid.T) { assert.Equal(t, myList.Len(), expectedSized, "must be equal") },