MCPcopy Create free account
hub / github.com/benbjohnson/immutable / validateForwardIterator

Method validateForwardIterator

immutable_test.go:2276–2292  ·  view source on GitHub ↗
(itr *SortedMapIterator[int, int])

Source from the content-addressed store, hash-verified

2274}
2275
2276func (m *TSortedMap) validateForwardIterator(itr *SortedMapIterator[int, int]) error {
2277 for i, k0 := range m.keys {
2278 v0 := m.std[k0]
2279 if k1, v1, ok := itr.Next(); !ok || k0 != k1 || v0 != v1 {
2280 return fmt.Errorf("%d. SortedMapIterator.Next()=<%v,%v>, expected <%v,%v>", i, k1, v1, k0, v0)
2281 }
2282
2283 done := i == len(m.keys)-1
2284 if v := itr.Done(); v != done {
2285 return fmt.Errorf("%d. SortedMapIterator.Done()=%v, expected %v", i, v, done)
2286 }
2287 }
2288 if k, v, ok := itr.Next(); ok {
2289 return fmt.Errorf("SortedMapIterator.Next()=<%v,%v>, expected nil after done", k, v)
2290 }
2291 return nil
2292}
2293
2294func (m *TSortedMap) validateBackwardIterator(itr *SortedMapIterator[int, int]) error {
2295 itr.Last()

Callers 1

ValidateMethod · 0.95

Calls 2

NextMethod · 0.45
DoneMethod · 0.45

Tested by

no test coverage detected