The Wayback Machine - https://web.archive.org/web/20230227141727/https://github.com/RoaringBitmap/roaring/commit/efdda79847024a70ef2074b21144085e887863ac
Skip to content
Permalink
Browse files
Fix difference panic on empty set2
  • Loading branch information
Anatolii Belomestnov committed Mar 27, 2020
1 parent 4d53b29 commit efdda79
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 0 deletions.
@@ -14,6 +14,7 @@ func equal(a, b []uint16) bool {

func difference(set1 []uint16, set2 []uint16, buffer []uint16) int {
if 0 == len(set2) {
buffer = buffer[:len(set1)]
for k := 0; k < len(set1); k++ {
buffer[k] = set1[k]
}
@@ -22,6 +22,23 @@ func TestSetUtilDifference(t *testing.T) {
result = result[:nl]

assert.Equal(t, expectedresult, result)

// empty set2
data2 = []uint16{}
expectedresult = []uint16{0, 1, 2, 3, 4, 9}
nl = difference(data1, data2, result)
result = result[:nl]

assert.Equal(t, expectedresult, result)

// empty set 1
data1 = []uint16{}
data2 = []uint16{2, 3, 4, 5, 8, 9, 11}
expectedresult = []uint16{}
nl = difference(data1, data2, result)
result = result[:nl]

assert.Equal(t, expectedresult, result)
}

func TestSetUtilUnion(t *testing.T) {

0 comments on commit efdda79

Please sign in to comment.