| 2013 | } |
| 2014 | |
| 2015 | func TestRoaringArray64Validation(t *testing.T) { |
| 2016 | a := roaringArray64{} |
| 2017 | |
| 2018 | a.keys = append(a.keys, uint32(3), uint32(1)) |
| 2019 | assert.ErrorIs(t, a.validate(), ErrKeySortOrder) |
| 2020 | a.clear() |
| 2021 | |
| 2022 | // build up cardinality coherent arrays |
| 2023 | a.keys = append(a.keys, uint32(1), uint32(3), uint32(10)) |
| 2024 | assert.ErrorIs(t, a.validate(), ErrCardinalityConstraint) |
| 2025 | a.containers = append(a.containers, roaring.NewBitmap(), roaring.NewBitmap(), roaring.NewBitmap()) |
| 2026 | assert.ErrorIs(t, a.validate(), ErrCardinalityConstraint) |
| 2027 | a.needCopyOnWrite = append(a.needCopyOnWrite, true, false, true) |
| 2028 | assert.Errorf(t, a.validate(), "zero intervals") |
| 2029 | } |
| 2030 | |
| 2031 | func TestBitMapValidation(t *testing.T) { |
| 2032 | bm := NewBitmap() |