]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
jsontest: Add test cases for deflattening of arrays
authorPeter Krempa <pkrempa@redhat.com>
Wed, 18 Mar 2020 16:02:42 +0000 (17:02 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Fri, 20 Mar 2020 08:47:16 +0000 (09:47 +0100)
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
tests/virjsondata/deflatten-dotted-array-in.json [new file with mode: 0644]
tests/virjsondata/deflatten-dotted-array-out.json [new file with mode: 0644]
tests/virjsontest.c

diff --git a/tests/virjsondata/deflatten-dotted-array-in.json b/tests/virjsondata/deflatten-dotted-array-in.json
new file mode 100644 (file)
index 0000000..06486a8
--- /dev/null
@@ -0,0 +1,27 @@
+{
+    "valid": {
+        "0": "test",
+        "1": { "something": 123 },
+        "2": true
+    },
+    "outoforder": {
+        "1": { "something": 123 },
+        "2": true,
+        "0": "test"
+    },
+    "invalid-overflow": {
+        "1": { "something": 123 },
+        "2": true,
+        "4": "test"
+    },
+    "invalid-strings": {
+        "1": { "something": 123 },
+        "2": true,
+        "test": "test"
+    },
+    "nestedkeys": {
+        "test.0.test": 123,
+        "test.2.test": 123,
+        "test.1.test": 123
+    }
+}
diff --git a/tests/virjsondata/deflatten-dotted-array-out.json b/tests/virjsondata/deflatten-dotted-array-out.json
new file mode 100644 (file)
index 0000000..b32b4b1
--- /dev/null
@@ -0,0 +1,43 @@
+{
+  "valid": [
+    "test",
+    {
+      "something": 123
+    },
+    true
+  ],
+  "outoforder": [
+    "test",
+    {
+      "something": 123
+    },
+    true
+  ],
+  "invalid-overflow": {
+    "1": {
+      "something": 123
+    },
+    "2": true,
+    "4": "test"
+  },
+  "invalid-strings": {
+    "1": {
+      "something": 123
+    },
+    "2": true,
+    "test": "test"
+  },
+  "nestedkeys": {
+    "test": [
+      {
+        "test": 123
+      },
+      {
+        "test": 123
+      },
+      {
+        "test": 123
+      }
+    ]
+  }
+}
index 9da0f9c90d25b7cf310bbe16c894c3f0e175278f..77ca6b449be49e9a4e1a3c85edc186f54e9a6a12 100644 (file)
@@ -609,6 +609,7 @@ mymain(void)
     DO_TEST_DEFLATTEN("concat", true);
     DO_TEST_DEFLATTEN("concat-double-key", false);
     DO_TEST_DEFLATTEN("qemu-sheepdog", true);
+    DO_TEST_DEFLATTEN("dotted-array", true);
 
     return (ret == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
 }