(t *testing.T)
| 193 | } |
| 194 | |
| 195 | func TestFastAggregationsAndAny(t *testing.T) { |
| 196 | base := NewBitmap() |
| 197 | rb1 := NewBitmap() |
| 198 | rb2 := NewBitmap() |
| 199 | rb3 := NewBitmap() |
| 200 | // only one filter has some values |
| 201 | from := uint32(maxCapacity * 4) |
| 202 | for i := from; i < from+100; i += 2 { |
| 203 | rb1.Add(i) |
| 204 | } |
| 205 | // only base has values |
| 206 | from = maxCapacity * 7 |
| 207 | for i := from; i < from+100; i += 2 { |
| 208 | base.Add(i) |
| 209 | } |
| 210 | // base and one of filters have same values |
| 211 | from = maxCapacity * 8 |
| 212 | for i := from; i < from+100; i += 2 { |
| 213 | base.Add(i) |
| 214 | rb1.Add(i) |
| 215 | } |
| 216 | // small union |
| 217 | from = maxCapacity * 10 |
| 218 | for i := from; i < from+1000; i += 10 { |
| 219 | base.Add(i) |
| 220 | base.Add(i + i%3) |
| 221 | |
| 222 | rb1.Add(i) |
| 223 | rb1.Add(i + 1) |
| 224 | |
| 225 | rb2.Add(i + 2) |
| 226 | rb2.Add(i + i%7) |
| 227 | |
| 228 | rb3.Add(200 + i) |
| 229 | } |
| 230 | // run filters |
| 231 | from = maxCapacity * 10 |
| 232 | for i := from; i < from+1000; i += 3 { |
| 233 | base.Add(i) |
| 234 | } |
| 235 | for i := from; i < from+100; i++ { |
| 236 | rb1.Add(i) |
| 237 | rb2.Add(i + 333) |
| 238 | rb3.Add(i + 433) |
| 239 | } |
| 240 | // large union |
| 241 | from = maxCapacity * 16 |
| 242 | for i := from; i < from+arrayDefaultMaxSize*10; i += 3 { |
| 243 | base.Add(i) |
| 244 | base.Add(i + i%2 + 1) |
| 245 | rb2.Add(i) |
| 246 | rb3.Add(i + 1) |
| 247 | } |
| 248 | |
| 249 | // some extra base values |
| 250 | from = maxCapacity * 17 |
| 251 | for i := from; i < from+1000; i++ { |
| 252 | base.Add(i) |
nothing calls this directly
no test coverage detected
searching dependent graphs…