]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
tests: qemublocktest: Add a synthetic test case for bitmap detection
authorPeter Krempa <pkrempa@redhat.com>
Thu, 12 Dec 2019 12:47:40 +0000 (13:47 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Fri, 13 Dec 2019 12:22:55 +0000 (13:22 +0100)
The real data gathered for the 'basic' test case don't exercise some
fields. Add a copy with a few values modified manually.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
tests/qemublocktest.c
tests/qemublocktestdata/bitmap/synthetic.json [new file with mode: 0644]
tests/qemublocktestdata/bitmap/synthetic.out [new file with mode: 0644]

index 71b8a4ff88fd7103c53fb6d44cbaebbefe5dcd0a..a0259912a9c32171a6f55dcfaa2350b9bcf312ca 100644 (file)
@@ -776,6 +776,7 @@ mymain(void)
     } while (0)
 
     TEST_BITMAP_DETECT("basic");
+    TEST_BITMAP_DETECT("synthetic");
 
  cleanup:
     virHashFree(diskxmljsondata.schema);
diff --git a/tests/qemublocktestdata/bitmap/synthetic.json b/tests/qemublocktestdata/bitmap/synthetic.json
new file mode 100644 (file)
index 0000000..56882bd
--- /dev/null
@@ -0,0 +1,118 @@
+[
+    {
+        "iops_rd": 0,
+        "detect_zeroes": "off",
+        "image": {
+            "virtual-size": 10485760,
+            "filename": "/tmp/pull4.qcow2",
+            "cluster-size": 65536,
+            "format": "qcow2",
+            "actual-size": 200704,
+            "format-specific": {
+                "type": "qcow2",
+                "data": {
+                    "compat": "1.1",
+                    "lazy-refcounts": false,
+                    "refcount-bits": 16,
+                    "corrupt": false
+                }
+            },
+            "dirty-flag": false
+        },
+        "iops_wr": 0,
+        "ro": false,
+        "node-name": "libvirt-1-format",
+        "backing_file_depth": 0,
+        "drv": "qcow2",
+        "iops": 0,
+        "bps_wr": 0,
+        "write_threshold": 0,
+        "dirty-bitmaps": [
+            {
+                "name": "current",
+                "recording": true,
+                "persistent": true,
+                "busy": false,
+                "status": "active",
+                "granularity": 65536,
+                "count": 0
+            },
+            {
+                "name": "d",
+                "recording": false,
+                "persistent": false,
+                "busy": false,
+                "status": "disabled",
+                "granularity": 65536,
+                "count": 0
+            },
+            {
+                "name": "c",
+                "recording": false,
+                "persistent": true,
+                "busy": false,
+                "status": "disabled",
+                "granularity": 1234,
+                "count": 0
+            },
+            {
+                "name": "b",
+                "recording": false,
+                "persistent": true,
+                "busy": true,
+                "status": "disabled",
+                "granularity": 65536,
+                "count": 21314
+            },
+            {
+                "name": "a",
+                "recording": false,
+                "persistent": true,
+                "busy": false,
+                "status": "disabled",
+                "inconsistent": true,
+                "granularity": 65536,
+                "count": 0
+            }
+        ],
+        "encrypted": false,
+        "bps": 0,
+        "bps_rd": 0,
+        "cache": {
+            "no-flush": false,
+            "direct": false,
+            "writeback": true
+        },
+        "file": "/tmp/pull4.qcow2",
+        "encryption_key_missing": false
+    },
+    {
+        "iops_rd": 0,
+        "detect_zeroes": "off",
+        "image": {
+            "virtual-size": 197120,
+            "filename": "/tmp/pull4.qcow2",
+            "format": "file",
+            "actual-size": 200704,
+            "dirty-flag": false
+        },
+        "iops_wr": 0,
+        "ro": false,
+        "node-name": "libvirt-1-storage",
+        "backing_file_depth": 0,
+        "drv": "file",
+        "iops": 0,
+        "bps_wr": 0,
+        "write_threshold": 0,
+        "encrypted": false,
+        "bps": 0,
+        "bps_rd": 0,
+        "cache": {
+            "no-flush": false,
+            "direct": false,
+            "writeback": true
+        },
+        "file": "/tmp/pull4.qcow2",
+        "encryption_key_missing": false
+    }
+]
diff --git a/tests/qemublocktestdata/bitmap/synthetic.out b/tests/qemublocktestdata/bitmap/synthetic.out
new file mode 100644 (file)
index 0000000..e8041c5
--- /dev/null
@@ -0,0 +1,6 @@
+libvirt-1-format:
+  current: record:1 busy:0 persist:1 inconsist:0 gran:65536 dirty:0
+        d: record:0 busy:0 persist:0 inconsist:0 gran:65536 dirty:0
+        c: record:0 busy:0 persist:1 inconsist:0 gran:1234 dirty:0
+        b: record:0 busy:1 persist:1 inconsist:0 gran:65536 dirty:21314
+        a: record:0 busy:0 persist:1 inconsist:1 gran:65536 dirty:0