MCPcopy Create free account
hub / github.com/RoaringBitmap/roaring / TestRunContainerUnionCardinality

Function TestRunContainerUnionCardinality

runcontainer_test.go:2626–2667  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

2624}
2625
2626func TestRunContainerUnionCardinality(t *testing.T) {
2627 t.Run("Two Empty Runs", func(t *testing.T) {
2628 first := runContainer16{}
2629 second := runContainer16{}
2630 result := first.unionCardinality(&second)
2631 assert.Equal(t, uint(0), result)
2632 })
2633
2634 t.Run("First Run Empty", func(t *testing.T) {
2635 first := runContainer16{}
2636 second := runContainer16{}
2637 second.iaddRange(0, 1024)
2638 result := first.unionCardinality(&second)
2639 assert.Equal(t, uint(1024), result)
2640 })
2641
2642 t.Run("Second Run Empty", func(t *testing.T) {
2643 first := runContainer16{}
2644 second := runContainer16{}
2645 first.iaddRange(0, 1024)
2646 result := first.unionCardinality(&second)
2647 assert.Equal(t, uint(1024), result)
2648 })
2649
2650 t.Run("Disjoint Ranges", func(t *testing.T) {
2651 first := runContainer16{}
2652 first.iaddRange(512, 1024)
2653 second := runContainer16{}
2654 second.iaddRange(0, 256)
2655 result := first.unionCardinality(&second)
2656 assert.Equal(t, uint(256+512), result)
2657 })
2658
2659 t.Run("Complete Overlap", func(t *testing.T) {
2660 first := runContainer16{}
2661 first.iaddRange(0, 256)
2662 second := runContainer16{}
2663 second.iaddRange(0, 256)
2664 result := first.unionCardinality(&second)
2665 assert.Equal(t, uint(256), result)
2666 })
2667}
2668
2669func TestRunContainerIntersectCardinality(t *testing.T) {
2670 t.Run("Two Empty Runs", func(t *testing.T) {

Callers

nothing calls this directly

Calls 2

unionCardinalityMethod · 0.95
iaddRangeMethod · 0.95

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…