(t *testing.T)
| 111 | } |
| 112 | |
| 113 | func TestRemoveRandom(t *testing.T) { |
| 114 | var s Set |
| 115 | for i := 0; i < testSize; i++ { |
| 116 | s.InsertWithoutMergingRange(Range{i, i + 1}, i+valueOffset) |
| 117 | } |
| 118 | order := rand.Perm(testSize) |
| 119 | var nrRemovals int |
| 120 | for i, j := range order { |
| 121 | seg := s.FindSegment(j) |
| 122 | if !seg.Ok() { |
| 123 | t.Errorf("Iteration %d: failed to find segment with key %d", i, j) |
| 124 | break |
| 125 | } |
| 126 | s.Remove(seg) |
| 127 | nrRemovals++ |
| 128 | if err := s.segmentTestCheck(testSize-nrRemovals, validate); err != nil { |
| 129 | t.Errorf("Iteration %d: %v", i, err) |
| 130 | break |
| 131 | } |
| 132 | } |
| 133 | if got, want := s.countSegments(), testSize-nrRemovals; got != want { |
| 134 | t.Errorf("Wrong final number of segments: got %d, wanted %d", got, want) |
| 135 | } |
| 136 | if t.Failed() { |
| 137 | t.Logf("Removal order: %v", order[:nrRemovals]) |
| 138 | t.Logf("Set contents:\n%v", &s) |
| 139 | t.FailNow() |
| 140 | } |
| 141 | } |
| 142 | |
| 143 | func TestMaxGapAddRandom(t *testing.T) { |
| 144 | var s gapSet |
nothing calls this directly
no test coverage detected
searching dependent graphs…