[PATCH 22/27] qemuMonitorJSONTestAttachChardev: Add tests for FD passing of file backend

Peter Krempa pkrempa at redhat.com
Wed Feb 9 16:02:14 UTC 2022


Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
 tests/qemumonitorjsontest.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/tests/qemumonitorjsontest.c b/tests/qemumonitorjsontest.c
index 8fbb199a59..278d7ba765 100644
--- a/tests/qemumonitorjsontest.c
+++ b/tests/qemumonitorjsontest.c
@@ -680,6 +680,8 @@ static int
 qemuMonitorJSONTestAttachChardev(virDomainXMLOption *xmlopt,
                                  GHashTable *schema)
 {
+    virDomainChrDef chrdev = { .info = { .alias = (char *) "alias" }};
+    virDomainDeviceDef dev = { .type = VIR_DOMAIN_DEVICE_CHR, .data.chr = &chrdev };
     int ret = 0;

 #define CHECK(label, fail, expectargs) \
@@ -723,6 +725,7 @@ qemuMonitorJSONTestAttachChardev(virDomainXMLOption *xmlopt,

     {
         g_autoptr(virDomainChrSourceDef) chr = virDomainChrSourceDefNew(xmlopt);
+        qemuDomainChrSourcePrivate *charpriv = QEMU_DOMAIN_CHR_SOURCE_PRIVATE(chr);

         chr->data.file.path = g_strdup("/test/path");

@@ -737,6 +740,16 @@ qemuMonitorJSONTestAttachChardev(virDomainXMLOption *xmlopt,
               "{'id':'alias','backend':{'type':'file','data':{'out':'/test/path',"
                                                              "'logfile':'/test/logfile',"
                                                              "'logappend':false}}}");
+
+        chrdev.source = chr;
+        ignore_value(testQemuPrepareHostBackendChardevOne(&dev, chr, NULL));
+        qemuFDPassTransferMonitorFake(charpriv->sourcefd);
+        qemuFDPassTransferMonitorFake(charpriv->logfd);
+        CHECK("file", false,
+              "{'id':'alias','backend':{'type':'file','data':{'out':'/dev/fdset/monitor-fake',"
+                                                             "'append':true,"
+                                                             "'logfile':'/dev/fdset/monitor-fake',"
+                                                             "'logappend':true}}}");
     }

     {
-- 
2.34.1




More information about the libvir-list mailing list