@@ -75,9 +75,55 @@ sub test_rename_domain {
75
75
return $new_domain_name ;
76
76
}
77
77
78
+ sub _change_hardware_ram ($domain ) {
79
+ Ravada::Request-> shutdown_domain(
80
+ uid => user_admin-> id
81
+ ,id_domain => $domain -> id
82
+ ,timeout => 1
83
+ );
84
+ wait_request();
85
+
86
+ my $max_mem = $domain -> info(user_admin)-> {max_mem };
87
+ my $mem = $domain -> info(user_admin)-> {memory };
88
+
89
+ my $new_max_mem = int ($max_mem * 1.7 ) + 1;
90
+ my $new_mem = int ($mem * 1.6 ) + 1;
91
+
92
+ Ravada::Request-> change_hardware (
93
+ uid => user_admin-> id
94
+ ,id_domain => $domain -> id
95
+ ,hardware => ' memory'
96
+ ,data => { max_mem => $new_max_mem , memory => $new_mem }
97
+ );
98
+ wait_request(debug => 0);
99
+ my $domain2 = Ravada::Front::Domain-> open ($domain -> id);
100
+ like($domain2 -> _data(' config_no_hd' ),qr / ./ ) or die $domain -> name;
101
+ }
102
+
103
+ sub _add_hardware_disk ($domain ) {
104
+ diag(" add disk" );
105
+ Ravada::Request-> shutdown_domain(
106
+ uid => user_admin-> id
107
+ ,id_domain => $domain -> id
108
+ ,timeout => 1
109
+ );
110
+ wait_request();
111
+
112
+ Ravada::Request-> add_hardware(
113
+ uid => user_admin-> id
114
+ ,id_domain => $domain -> id
115
+ ,name => ' disk'
116
+ ,data => { size => 1*1024*1024, type => ' data' }
117
+ );
118
+ wait_request();
119
+ my $domain2 = Ravada::Front::Domain-> open ($domain -> id);
120
+ diag($domain2 -> _data(' config_no_hd' ));
121
+ }
122
+
78
123
sub test_req_rename_domain {
79
- my ($vm_name , $domain_name , $dont_fork ) = @_ ;
124
+ my ($vm_name , $domain_name , $dont_fork , $change_hardware ) = @_ ;
80
125
my $debug = 0;
126
+ $change_hardware = 0 if !defined $change_hardware ;
81
127
82
128
my $domain_id ;
83
129
{
@@ -86,7 +132,11 @@ sub test_req_rename_domain {
86
132
my $domain = $vm -> search_domain($domain_name );
87
133
ok($domain ," [$vm_name -req] Expecting found $domain_name " ) or return ;
88
134
$domain_id = $domain -> id;
89
- $domain -> shutdown_now($USER );
135
+ if ($change_hardware == 1 ) {
136
+ _add_hardware_disk($domain );
137
+ } elsif ($change_hardware == 2) {
138
+ _change_hardware_ram($domain );
139
+ }
90
140
}
91
141
my $new_domain_name = new_domain_name();
92
142
{
@@ -120,6 +170,18 @@ sub test_req_rename_domain {
120
170
." $new_domain_name " ) or return ;
121
171
122
172
}
173
+ my $req = Ravada::Request-> start_domain(
174
+ uid => user_admin-> id
175
+ ,id_domain => $domain_id
176
+ );
177
+ wait_request(debug => 0);
178
+ Ravada::Request-> force_shutdown_domain(
179
+ uid => user_admin-> id
180
+ ,id_domain => $domain_id
181
+ );
182
+ wait_request();
183
+
184
+ return $new_domain_name ;
123
185
}
124
186
125
187
sub test_clone_domain {
@@ -399,7 +461,13 @@ for my $vm_name ( vm_names()) {
399
461
test_create_domain($vm_name , $domain_name );
400
462
401
463
$domain_name = test_create_domain($vm_name );
402
- test_req_rename_domain($vm_name , $domain_name ) or next ;
464
+
465
+ my $name2 =test_req_rename_domain($vm_name , $domain_name );
466
+ next if !$name2 ;
467
+ my $name3 = test_req_rename_domain($vm_name , $name2 , undef , 1);
468
+ next if !$name3 ;
469
+ my $name4 = test_req_rename_domain($vm_name , $name3 , undef , 2);
470
+ next if !$name4 ;
403
471
test_create_domain($vm_name , $domain_name );
404
472
405
473
test_rename_clone($vm_name );
0 commit comments