diff options
| author | 2026-06-14 14:15:52 +0000 | |
|---|---|---|
| committer | 2026-06-14 14:15:52 +0000 | |
| commit | 56385f0ae0502ad9b406db388e03f7ee028ef4f8 (patch) | |
| tree | e9405808d08c3d5ce3eb64e3a66c3f0e3f5237e2 /internal/format | |
| parent | object/store/packed, cmd/idx-bloom: NewBuilder wants a PackHash (diff) | |
internal/format/packidx/bloom: Fix tests
Diffstat (limited to 'internal/format')
| -rw-r--r-- | internal/format/packidx/bloom/bloom_test.go | 2 | ||||
| -rw-r--r-- | internal/format/packidx/bloom/lookup_test.go | 2 | ||||
| -rw-r--r-- | internal/format/packidx/bloom/roundtrip_test.go | 16 | ||||
| -rw-r--r-- | internal/format/packidx/bloom/write_test.go | 6 |
4 files changed, 19 insertions, 7 deletions
diff --git a/internal/format/packidx/bloom/bloom_test.go b/internal/format/packidx/bloom/bloom_test.go index 16295afd..440959f9 100644 --- a/internal/format/packidx/bloom/bloom_test.go +++ b/internal/format/packidx/bloom/bloom_test.go @@ -13,7 +13,7 @@ func validFilter(t *testing.T, format id.ObjectFormat) []byte { // TODO: maybe testgit should have something like this? t.Helper() - builder, err := bloom.NewBuilder(format, 4, 2) + builder, err := bloom.NewBuilder(format, 4, 2, make([]byte, format.Size())) if err != nil { t.Fatal(err) } diff --git a/internal/format/packidx/bloom/lookup_test.go b/internal/format/packidx/bloom/lookup_test.go index adfbcce5..e6264f9a 100644 --- a/internal/format/packidx/bloom/lookup_test.go +++ b/internal/format/packidx/bloom/lookup_test.go @@ -12,7 +12,7 @@ func TestMayContainBadLength(t *testing.T) { format := id.ObjectFormatSHA256 - builder, err := bloom.NewBuilder(format, 4, 2) + builder, err := bloom.NewBuilder(format, 4, 2, make([]byte, format.Size())) if err != nil { t.Fatal(err) } diff --git a/internal/format/packidx/bloom/roundtrip_test.go b/internal/format/packidx/bloom/roundtrip_test.go index 990c83e0..28db17a5 100644 --- a/internal/format/packidx/bloom/roundtrip_test.go +++ b/internal/format/packidx/bloom/roundtrip_test.go @@ -1,6 +1,7 @@ package bloom_test import ( + "bytes" "encoding/binary" "testing" @@ -38,12 +39,14 @@ func TestRoundTrip(t *testing.T) { t.Fatal(err) } - builder, err := bloom.NewBuilder(format, bucketCount, k) + size := format.Size() + packHash := makeOID(size, 0xC0FFEE) + + builder, err := bloom.NewBuilder(format, bucketCount, k, packHash) if err != nil { t.Fatal(err) } - size := format.Size() for i := range objects { builder.Add(makeOID(size, uint64(i))) } @@ -53,6 +56,15 @@ func TestRoundTrip(t *testing.T) { t.Fatal(err) } + if !bytes.Equal(filter.PackHash(), packHash) { + t.Fatalf("PackHash = %x, want %x", filter.PackHash(), packHash) + } + + err = filter.Verify() + if err != nil { + t.Fatalf("Verify on a freshly built filter: %v", err) + } + for i := range objects { if !filter.MayContain(makeOID(size, uint64(i))) { t.Fatalf("false negative for added object %d", i) diff --git a/internal/format/packidx/bloom/write_test.go b/internal/format/packidx/bloom/write_test.go index 40c42e37..a1cee127 100644 --- a/internal/format/packidx/bloom/write_test.go +++ b/internal/format/packidx/bloom/write_test.go @@ -25,7 +25,7 @@ func TestRecommendParams(t *testing.T) { t.Errorf("n=%d: bucket count %d not a power of two", n, bucketCount) } - _, err = bloom.NewBuilder(format, bucketCount, k) + _, err = bloom.NewBuilder(format, bucketCount, k, make([]byte, format.Size())) if err != nil { t.Errorf("n=%d: recommended parameters rejected: %v", n, err) } @@ -55,7 +55,7 @@ func TestNewBuilderRejects(t *testing.T) { t.Run(tc.name, func(t *testing.T) { t.Parallel() - _, err := bloom.NewBuilder(format, tc.bucketCount, tc.k) + _, err := bloom.NewBuilder(format, tc.bucketCount, tc.k, make([]byte, format.Size())) if !errors.Is(err, bloom.ErrInvalidParameters) { t.Fatalf("error = %v, want ErrInvalidParameters", err) } @@ -68,7 +68,7 @@ func TestNewBuilderRejects(t *testing.T) { func TestAddBadLength(t *testing.T) { t.Parallel() - builder, err := bloom.NewBuilder(id.ObjectFormatSHA256, 4, 2) + builder, err := bloom.NewBuilder(id.ObjectFormatSHA256, 4, 2, make([]byte, id.ObjectFormatSHA256.Size())) if err != nil { t.Fatal(err) } |
