diff --git a/tests/virjsondata/deflatten-qemu-sheepdog-in.json b/tests/virjsondata/deflatten-qemu-sheepdog-in.json
new file mode 100644
index 0000000000000000000000000000000000000000..7c0286300f1f36135735d06e77feb89ed8519ae2
--- /dev/null
+++ b/tests/virjsondata/deflatten-qemu-sheepdog-in.json
@@ -0,0 +1,11 @@
+{
+ "driver": "raw",
+ "file": {
+ "server.host": "10.10.10.10",
+ "server.port": "7000",
+ "tag": "",
+ "driver": "sheepdog",
+ "server.type": "inet",
+ "vdi": "Alice"
+ }
+}
diff --git a/tests/virjsondata/deflatten-qemu-sheepdog-out.json b/tests/virjsondata/deflatten-qemu-sheepdog-out.json
new file mode 100644
index 0000000000000000000000000000000000000000..258b44a76c411d944ec757a6609732df2054408c
--- /dev/null
+++ b/tests/virjsondata/deflatten-qemu-sheepdog-out.json
@@ -0,0 +1,13 @@
+{
+ "driver": "raw",
+ "file": {
+ "server": {
+ "host": "10.10.10.10",
+ "port": "7000",
+ "type": "inet"
+ },
+ "tag": "",
+ "driver": "sheepdog",
+ "vdi": "Alice"
+ }
+}
diff --git a/tests/virjsontest.c b/tests/virjsontest.c
index 2771cb5cd8beeb163aa63b2369cccdc4c0e8430f..b3a230a02da69d6f7e65a5733bc41dcd00433a68 100644
--- a/tests/virjsontest.c
+++ b/tests/virjsontest.c
@@ -519,6 +519,7 @@ mymain(void)
DO_TEST_DEFLATTEN("double-key", false);
DO_TEST_DEFLATTEN("concat", true);
DO_TEST_DEFLATTEN("concat-double-key", false);
+ DO_TEST_DEFLATTEN("qemu-sheepdog", true);
return (ret == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
}
diff --git a/tests/virstoragetest.c b/tests/virstoragetest.c
index f34408395b4a0f3f4f15276ef2c6fd2f0c337b10..90fcf36ca1f3e7f437478995231ba9b7e2475d2a 100644
--- a/tests/virstoragetest.c
+++ b/tests/virstoragetest.c
@@ -1575,6 +1575,16 @@ mymain(void)
"\n");
+ TEST_BACKING_PARSE("json:{\"driver\": \"raw\","
+ "\"file\": {\"server.host\": \"10.10.10.10\","
+ "\"server.port\": \"7000\","
+ "\"tag\": \"\","
+ "\"driver\": \"sheepdog\","
+ "\"server.type\": \"inet\","
+ "\"vdi\": \"Alice\"}}",
+ "\n");
#endif /* WITH_YAJL */
cleanup: