]> git.proxmox.com Git - qemu-server.git/blobdiff - test/run_config2command_tests.pl
cfg2cmd tests: config with q35, pci passthrough, NUMA, EFI
[qemu-server.git] / test / run_config2command_tests.pl
index 0e37c172d68003808b22998a1cc7c0d0c070ccb2..dbec70c1ddab3e07df350a16b244f495c2baf5d7 100755 (executable)
@@ -105,7 +105,13 @@ my $qemu_server_module;
 $qemu_server_module = Test::MockModule->new('PVE::QemuServer');
 $qemu_server_module->mock(
     kvm_user_version => sub {
-       return $current_test->{qemu_version} // $base_env->{real_qemu_version};
+       return $current_test->{qemu_version} // $base_env->{real_qemu_version} // '2.12';
+    },
+    kvm_version => sub {
+       return $current_test->{qemu_version} // $base_env->{real_qemu_version} // '2.12';
+    },
+    kernel_has_vhost_net => sub {
+       return 1; # TODO: make this per-test configurable?
     },
     get_host_arch => sub() {
        return $current_test->{host_arch} // 'x86_64';
@@ -134,7 +140,7 @@ sub diff($$) {
     my $ha = IO::Handle->new_from_fd($wa, 'w');
     my $hb = IO::Handle->new_from_fd($wb, 'w');
 
-    open my $diffproc, '-|', 'diff', '-up', "/dev/fd/$ra", "/dev/fd/$rb"
+    open my $diffproc, '-|', 'diff', '-up', "/proc/self/fd/$ra", "/proc/self/fd/$rb"
        or die "failed to run program 'diff': $!";
     POSIX::close($ra);
     POSIX::close($rb);
@@ -190,7 +196,13 @@ sub do_test($) {
 
        my $exp = join("\n", @$cmd_expected);
        my $got = join("\n", @$cmd);
-       diff($exp, $got);
+       eval { diff($exp, $got) };
+       if (my $err = $@) {
+           fail("$testname");
+           note($err);
+       } else {
+           pass("$testname");
+       }
     } else {
        file_set_contents($cmd_fn, $cmdline);
     }