]> xenbits.xensource.com Git - libvirt.git/commitdiff
tests: Add test cases for the empty bitmap
authorMarc Hartmayer <mhartmay@linux.vnet.ibm.com>
Wed, 6 Jul 2016 12:02:28 +0000 (14:02 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Sat, 9 Jul 2016 09:03:32 +0000 (11:03 +0200)
As the empty bitmap exists, we should also test it. This patch adds
test cases for the procedures 'virBitmapNextSetBit', 'virBitmapLastSetBit',
'virBitmapNextClearBit'.

Tested-by: Sascha Silbe <silbe@linux.vnet.ibm.com>
Reviewed-by: Sascha Silbe <silbe@linux.vnet.ibm.com>
Reviewed-by: Boris Fiuczynski <fiuczy@linux.vnet.ibm.com>
Signed-off-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com>
tests/virbitmaptest.c

index 009fa0dad363374dafd525472a5b0d0bfe067a18..a17ef82fb81a4fd6b7e40f1e10849de772c4974c 100644 (file)
@@ -191,6 +191,23 @@ test4(const void *data ATTRIBUTE_UNUSED)
     if (ARRAY_CARDINALITY(bitsPos) + ARRAY_CARDINALITY(bitsPosInv) != size)
         goto error;
 
+    /* 0. empty set */
+
+    if (!(bitmap = virBitmapNewEmpty()))
+        goto error;
+
+    if (virBitmapNextSetBit(bitmap, -1) != -1)
+        goto error;
+
+    if (virBitmapLastSetBit(bitmap) != -1)
+        goto error;
+
+    if (virBitmapNextClearBit(bitmap, -1) != -1)
+        goto error;
+
+    virBitmapFree(bitmap);
+    bitmap = NULL;
+
     /* 1. zero set */
 
     bitmap = virBitmapNew(size);