diff options
author | EuAndreh <eu@euandre.org> | 2024-12-14 10:30:47 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2024-12-14 10:30:47 -0300 |
commit | 06eaf1738494a9e783ed100565911d08efaae826 (patch) | |
tree | a372bcc99fed70e1cf298eeddef1ec134b178102 /sets_test.go | |
parent | Remove extraneous files (diff) | |
download | pds-06eaf1738494a9e783ed100565911d08efaae826.tar.gz pds-06eaf1738494a9e783ed100565911d08efaae826.tar.xz |
Add Makefile and move files to structured folders
Diffstat (limited to 'sets_test.go')
-rw-r--r-- | sets_test.go | 126 |
1 files changed, 0 insertions, 126 deletions
diff --git a/sets_test.go b/sets_test.go deleted file mode 100644 index 6612cba..0000000 --- a/sets_test.go +++ /dev/null @@ -1,126 +0,0 @@ -package immutable - -import ( - "testing" -) - -func TestSetsPut(t *testing.T) { - s := NewSet[string](nil) - s2 := s.Add("1").Add("1") - s2.Add("2") - if s.Len() != 0 { - t.Fatalf("Unexpected mutation of set") - } - if s.Has("1") { - t.Fatalf("Unexpected set element") - } - if s2.Len() != 1 { - t.Fatalf("Unexpected non-mutation of set") - } - if !s2.Has("1") { - t.Fatalf("Set element missing") - } - itr := s2.Iterator() - counter := 0 - for !itr.Done() { - i, v := itr.Next() - t.Log(i, v) - counter++ - } - if counter != 1 { - t.Fatalf("iterator wrong length") - } -} - -func TestSetsDelete(t *testing.T) { - s := NewSet[string](nil) - s2 := s.Add("1") - s3 := s.Delete("1") - if s2.Len() != 1 { - t.Fatalf("Unexpected non-mutation of set") - } - if !s2.Has("1") { - t.Fatalf("Set element missing") - } - if s3.Len() != 0 { - t.Fatalf("Unexpected set length after delete") - } - if s3.Has("1") { - t.Fatalf("Unexpected set element after delete") - } -} - -func TestSortedSetsPut(t *testing.T) { - s := NewSortedSet[string](nil) - s2 := s.Add("1").Add("1").Add("0") - if s.Len() != 0 { - t.Fatalf("Unexpected mutation of set") - } - if s.Has("1") { - t.Fatalf("Unexpected set element") - } - if s2.Len() != 2 { - t.Fatalf("Unexpected non-mutation of set") - } - if !s2.Has("1") { - t.Fatalf("Set element missing") - } - - itr := s2.Iterator() - counter := 0 - for !itr.Done() { - i, v := itr.Next() - t.Log(i, v) - if counter == 0 && i != "0" { - t.Fatalf("sort did not work for first el") - } - if counter == 1 && i != "1" { - t.Fatalf("sort did not work for second el") - } - counter++ - } - if counter != 2 { - t.Fatalf("iterator wrong length") - } -} - -func TestSortedSetsDelete(t *testing.T) { - s := NewSortedSet[string](nil) - s2 := s.Add("1") - s3 := s.Delete("1") - if s2.Len() != 1 { - t.Fatalf("Unexpected non-mutation of set") - } - if !s2.Has("1") { - t.Fatalf("Set element missing") - } - if s3.Len() != 0 { - t.Fatalf("Unexpected set length after delete") - } - if s3.Has("1") { - t.Fatalf("Unexpected set element after delete") - } -} - -func TestSortedSetBuilder(t *testing.T) { - b := NewSortedSetBuilder[string](nil) - b.Set("test3") - b.Set("test1") - b.Set("test2") - - s := b.SortedSet() - items := s.Items() - - if len(items) != 3 { - t.Fatalf("Set has wrong number of items") - } - if items[0] != "test1" { - t.Fatalf("First item incorrectly sorted") - } - if items[1] != "test2" { - t.Fatalf("Second item incorrectly sorted") - } - if items[2] != "test3" { - t.Fatalf("Third item incorrectly sorted") - } -} |