parent
511bdc61c5
commit
08eaea92d1
@ -1,18 +1,28 @@
|
|||||||
package sieve
|
package sieve
|
||||||
|
|
||||||
import "testing"
|
import (
|
||||||
|
"slices"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
func TestSieveCache(t *testing.T) {
|
func TestSieveCache(t *testing.T) {
|
||||||
cache := NewCache(3)
|
cache := NewCache(3)
|
||||||
cache.Access("A")
|
cache.Put("a", "A")
|
||||||
cache.Access("B")
|
cache.Put("b", "B")
|
||||||
cache.Access("C")
|
cache.Put("c", "C")
|
||||||
cache.Access("D")
|
cache.Put("d", "D")
|
||||||
cache.Access("B")
|
cache.Put("b", "B")
|
||||||
cache.Access("E")
|
cache.Put("e", "E")
|
||||||
cache.Access("A")
|
cache.Put("a", "A")
|
||||||
cache.Range(func(v string) bool {
|
|
||||||
t.Log(v)
|
expectedKeys := []string{"a", "b", "e"}
|
||||||
|
count := 0
|
||||||
|
cache.Range(func(k, _ string) bool {
|
||||||
|
count++
|
||||||
|
if !slices.Contains(expectedKeys, k) {
|
||||||
|
t.Fail()
|
||||||
|
t.Errorf("unexpected key in result: %s", k)
|
||||||
|
}
|
||||||
return true
|
return true
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in new issue