]> git.proxmox.com Git - qemu-server.git/blame - test/run_ovf_tests.pl
bump version to 8.2.1
[qemu-server.git] / test / run_ovf_tests.pl
CommitLineData
5fd0910b
EK
1#!/usr/bin/perl
2
3use strict;
4use warnings;
5use lib qw(..); # prepend .. to @INC so we use the local version of PVE packages
6
7use FindBin '$Bin';
8use PVE::QemuServer::OVF;
9use Test::More;
10
11use Data::Dumper;
12
13my $test_manifests = join ('/', $Bin, 'ovf_manifests');
14
31bf5a0f
DC
15print "parsing ovfs\n";
16
17my $win2008 = eval { PVE::QemuServer::OVF::parse_ovf("$test_manifests/Win_2008_R2_two-disks.ovf") };
18if (my $err = $@) {
19 fail('parse win2008');
20 warn("error: $err\n");
21} else {
22 ok('parse win2008');
23}
24my $win10 = eval { PVE::QemuServer::OVF::parse_ovf("$test_manifests/Win10-Liz.ovf") };
25if (my $err = $@) {
26 fail('parse win10');
27 warn("error: $err\n");
28} else {
29 ok('parse win10');
30}
39322a93
DC
31my $win10noNs = eval { PVE::QemuServer::OVF::parse_ovf("$test_manifests/Win10-Liz_no_default_ns.ovf") };
32if (my $err = $@) {
33 fail("parse win10 no default rasd NS");
34 warn("error: $err\n");
35} else {
36 ok('parse win10 no default rasd NS');
37}
5fd0910b
EK
38
39print "testing disks\n";
40
41is($win2008->{disks}->[0]->{disk_address}, 'scsi0', 'multidisk vm has the correct first disk controller');
42is($win2008->{disks}->[0]->{backing_file}, "$test_manifests/disk1.vmdk", 'multidisk vm has the correct first disk backing device');
43is($win2008->{disks}->[0]->{virtual_size}, 2048, 'multidisk vm has the correct first disk size');
44
45is($win2008->{disks}->[1]->{disk_address}, 'scsi1', 'multidisk vm has the correct second disk controller');
46is($win2008->{disks}->[1]->{backing_file}, "$test_manifests/disk2.vmdk", 'multidisk vm has the correct second disk backing device');
47is($win2008->{disks}->[1]->{virtual_size}, 2048, 'multidisk vm has the correct second disk size');
48
49is($win10->{disks}->[0]->{disk_address}, 'scsi0', 'single disk vm has the correct disk controller');
50is($win10->{disks}->[0]->{backing_file}, "$test_manifests/Win10-Liz-disk1.vmdk", 'single disk vm has the correct disk backing device');
51is($win10->{disks}->[0]->{virtual_size}, 2048, 'single disk vm has the correct size');
52
39322a93
DC
53is($win10noNs->{disks}->[0]->{disk_address}, 'scsi0', 'single disk vm (no default rasd NS) has the correct disk controller');
54is($win10noNs->{disks}->[0]->{backing_file}, "$test_manifests/Win10-Liz-disk1.vmdk", 'single disk vm (no default rasd NS) has the correct disk backing device');
55is($win10noNs->{disks}->[0]->{virtual_size}, 2048, 'single disk vm (no default rasd NS) has the correct size');
56
5fd0910b
EK
57print "\ntesting vm.conf extraction\n";
58
59is($win2008->{qm}->{name}, 'Win2008-R2x64', 'win2008 VM name is correct');
60is($win2008->{qm}->{memory}, '2048', 'win2008 VM memory is correct');
61is($win2008->{qm}->{cores}, '1', 'win2008 VM cores are correct');
62
63is($win10->{qm}->{name}, 'Win10-Liz', 'win10 VM name is correct');
64is($win10->{qm}->{memory}, '6144', 'win10 VM memory is correct');
65is($win10->{qm}->{cores}, '4', 'win10 VM cores are correct');
66
39322a93
DC
67is($win10noNs->{qm}->{name}, 'Win10-Liz', 'win10 VM (no default rasd NS) name is correct');
68is($win10noNs->{qm}->{memory}, '6144', 'win10 VM (no default rasd NS) memory is correct');
69is($win10noNs->{qm}->{cores}, '4', 'win10 VM (no default rasd NS) cores are correct');
70
5fd0910b 71done_testing();