Commit Graph

191 Commits

Author SHA1 Message Date
Marek Marczykowski-Górecki
1b5daea771
qvm-grow-root: add --allow-start option
In some (most) cases VM needs to be started to complete resize
operation. This may be unexpected, so make it clear and do not start the
VM when the user did not explicitly allow that.

Fixes QubesOS/qubes-issues#1268
2015-12-26 04:10:20 +01:00
Wojtek Porczyk
0dc0fd306f core3: test fixing
part of QubesOS/qubes-issues#1248
2015-12-23 14:34:53 +01:00
Marek Marczykowski-Górecki
3fafc5dc67
tests: fix race condition in network test
Wait for network configuration being applied before testing it.
2015-12-06 14:34:52 +01:00
Marek Marczykowski-Górecki
280cb8fdfb
tests: custom backup compression filter
QubesOS/qubes-issues#1459
2015-11-27 20:00:34 +01:00
Marek Marczykowski-Górecki
99272132a6
tests: test case for on the fly VM rename during backup restore
QubesOS/qubes-issues#869
2015-11-27 20:00:34 +01:00
Marek Marczykowski-Górecki
3065431058
tests: include NetVM in basic backup tests 2015-11-27 20:00:34 +01:00
Marek Marczykowski-Górecki
3e79ff6a37
tests: release qubes.xml lock while killing VMs
Otherwise hotplug scripts may deadlock on qvm-template-commit and
consequently do not release loop and device-mapper devices. Which means
also not releasing disk space for underlying images.

Fixes QubesOS/qubes-issues#1458
2015-11-27 20:00:34 +01:00
Marek Marczykowski-Górecki
aeec42dacf
tests: PV Grub: ensure that latest packages are installed
Flush yum case before that.
2015-11-25 03:16:24 +01:00
Marek Marczykowski-Górecki
64343572c1
tests: handle older df version in resize private.img tests
df --output=size isn't available in Debian (7, 8).
2015-11-25 03:15:23 +01:00
Marek Marczykowski-Górecki
a14e1cc86f
tests: move enter_keys_in_window to base SystemTestsMixin class
This ways it will be available also in DispVM tests (already referenced
there), and others.
2015-11-25 03:14:23 +01:00
Marek Marczykowski-Górecki
564ea5d64c
tests: check if qvm-move-to-vm properly fails in case of out of disk space
Regression test for QubesOS/qubes-issues#1355
2015-11-25 01:35:04 +01:00
Marek Marczykowski-Górecki
d7ab2d985d
tests: use wait_for_window/enter_keys_in_window wrappers when applicable
Reduce code duplication.
2015-11-25 01:35:04 +01:00
Marek Marczykowski-Górecki
db35e03aa7
tests: backup to VM tests
Regression tests for QubesOS/qubes-issues#1371 and
QubesOS/qubes-issues#1359

Fixes QubesOS/qubes-issues#1435
2015-11-25 01:35:04 +01:00
Marek Marczykowski-Górecki
736e278865
tests: fix wait_for_window function
The `show` parameter wasn't handled (show=False was assumed...)
2015-11-25 01:35:04 +01:00
Marek Marczykowski-Górecki
760786d999
tests: minor formating 2015-11-25 01:35:04 +01:00
Bahtiar `kalkin-` Gadimov
885dc5cd81 Rename storage dir to dir_path, type to driver
Bad idea to use attributes which are named after built in functions.
2015-11-21 14:46:23 +01:00
Bahtiar `kalkin-` Gadimov
989eab1d72 Add file image tests to tests/storage.py 2015-11-17 19:37:21 +01:00
Bahtiar `kalkin-` Gadimov
0ba0259d1a Extend documentation test/storage.py 2015-11-17 19:37:21 +01:00
Bahtiar `kalkin-` Gadimov
0bc0bc9045 XenStorage make sure subdirs exist in pool dir 2015-11-17 19:37:20 +01:00
Bahtiar `kalkin-` Gadimov
58f23ca392 Add configurable pool_dir to XenPool 2015-11-17 19:37:20 +01:00
Bahtiar `kalkin-` Gadimov
16d480cf4c Add storage add_pool & remove_pool 2015-11-17 19:37:19 +01:00
Bahtiar `kalkin-` Gadimov
26711e7e9a Use default pool_config if pool name is 'default' 2015-11-17 19:37:19 +01:00
Bahtiar `kalkin-` Gadimov
78891dd70f QubesVm save the name of the storage pool used 2015-11-17 19:37:19 +01:00
Bahtiar `kalkin-` Gadimov
d1685a13df Add storage.pool_exists 2015-11-17 19:37:19 +01:00
Bahtiar `kalkin-` Gadimov
8e0207a199 Rename QubesXenVmStorage to XenStorage 2015-11-17 19:37:19 +01:00
Bahtiar `kalkin-` Gadimov
bfaf37dae5 Add pool config parsing 2015-11-17 19:37:18 +01:00
Marek Marczykowski-Górecki
2ccfff438a
tests: use xterm instead of gnome-terminal in DispVM tests
There is no gnome-terminal in minimal template.
2015-11-15 02:53:48 +01:00
Marek Marczykowski-Górecki
74d9c62025
tests: improve qrexec confirmation handling
'xdotool search --sync' sometimes fails when searching for window. Fix
that by ensuring the windows is already visible when trying to enter
keys there.
2015-11-13 02:30:41 +01:00
Marek Marczykowski-Górecki
5acd27f61e
tests: increase allowed time delta for timezone tests
One more time, for slow systems... Let it be 30 seconds.
2015-11-11 04:30:00 +01:00
Marek Marczykowski-Górecki
cdc6d74c86
tests: PV Grub tests
QubesOS/qubes-issues#1354
2015-11-11 04:30:00 +01:00
Marek Marczykowski-Górecki
c595ac464b
tests: make sure that DispVM service call receive EOF
Even when the test fails. Otherwise the DispVM will stay alive.
2015-11-07 18:46:54 +01:00
Marek Marczykowski-Górecki
49141d444e
tests: resize private.img/root.img
QubesOS/qubes-issues#1268
2015-11-07 05:43:32 +01:00
Marek Marczykowski-Górecki
6051a89227
tests: add regression test for #1386
QubesOS/qubes-issues#1386
2015-11-07 05:03:54 +01:00
Marek Marczykowski-Górecki
a7b124d6da
tests: fix race condition in copy-paste test
Don't wait arbitrary time for paste to finish.
2015-11-03 02:47:08 +01:00
Marek Marczykowski-Górecki
c30c9c7d4e
tests: minor fixes to time sync tests
- don't crash when ClockVM wasn't set previously
- increase allowed delta (for slow systems)
2015-11-03 02:46:03 +01:00
Marek Marczykowski-Górecki
31ad72aa70
tests: better handle templates with no 'createrepo' installed 2015-11-03 02:44:25 +01:00
Marek Marczykowski-Górecki
44c340c046
tests: add wait_for_window function to reduce code duplication 2015-11-03 02:43:46 +01:00
Marek Marczykowski-Górecki
cf110c74e2
tests: fix cleanup in dom0 updates tests
The only directory to cleanup is cls.tmpdir. So make it simple, without
class property cleanup_paths, which for some reason didn't wasn't
emptied in tearDownClass.
2015-11-03 02:40:53 +01:00
Marek Marczykowski-Górecki
5160423065
tests: perform dom0 update check using VMs of different templates
QubesOS/qubes-issues#1282
QubesOS/qubes-issues#1029
2015-10-30 14:58:23 +01:00
Marek Marczykowski-Górecki
33255964c7
tests: handle Whonix in simple GUI tests
Whonix VMs have always hostname of 'host', so handle that when searching
for a window based on its title.
2015-10-30 14:09:52 +01:00
Marek Marczykowski-Górecki
f064a4c6ea
tests: improve qvm-run of GUI apps tests, include qubes-desktop-run 2015-10-27 23:16:37 +01:00
Marek Marczykowski-Górecki
9cb62f8f4d
tests: VM updates (direct and through updates proxy) 2015-10-27 23:16:10 +01:00
Marek Marczykowski-Górecki
e475e291a9
tests: more qrexec tests, this time for deadlocks
Tests for recently discovered deadlocks on write(2).

QubesOS/qubes-issues#1347
2015-10-25 15:23:12 +01:00
Wojtek Porczyk
dc3fcc3141 qubes/tests: port again the backported test runner
part of QubesOS/qubes-issues#1248
2015-10-17 00:20:44 +02:00
Marek Marczykowski-Górecki
9ea81c50ae
tests: add tests for 'qvm-prefs'
QubesOS/qubes-issues#1184
QubesOS/qubes-issues#1274
QubesOS/qubes-issues#1273
QubesOS/qubes-issues#1272
2015-10-05 05:52:21 +02:00
Marek Marczykowski-Górecki
d900b21dd8
tests: add test for #1256
QubesOS/qubes-issues#1256
2015-10-02 01:56:45 +02:00
Marek Marczykowski-Górecki
5043d17197
tests: fix misuse of self.assertNotRaises (#1163)
Fixes QubesOS/qubes-issues#1163
2015-09-30 22:34:12 +02:00
Marek Marczykowski-Górecki
c2cd84952e tests: backup compatibility with R2 (#1124)
QubesOS/qubes-issues#1124
2015-09-05 00:04:04 +02:00
Marek Marczykowski-Górecki
496a74f873 tests: add DispVM to backup compatibility test (r2b2)
Test for qubesos/qubes-issues#1124
2015-09-05 00:03:03 +02:00
Marek Marczykowski-Górecki
bbf22c4449
tests: add a test for aborted service call
Details here:
https://groups.google.com/d/msgid/qubes-users/20150807213935.GN3740%40mail-itl
2015-08-08 03:57:13 +02:00
Marek Marczykowski-Górecki
5199840927
tests: typo fix 2015-08-08 02:05:52 +02:00
Marek Marczykowski-Górecki
75bbd1a76b
tests: check firewall.xml path after VM rename 2015-08-05 01:04:44 +02:00
Marek Marczykowski-Górecki
a7e08e4584 tests: add qvm-clone test (#1032 case) 2015-07-08 04:26:11 +02:00
Marek Marczykowski-Górecki
50a9c62d0e tests: add test for qvm-sync-clock 2015-07-08 01:21:13 +02:00
Marek Marczykowski-Górecki
455535d036 tests: reload qubes.xml after creating VMs
Unfortunately it is still needed. For example to load default netvm
setting.
2015-07-08 01:20:25 +02:00
Marek Marczykowski-Górecki
6d1f40219c tests: code style fixes, no functional change 2015-07-07 21:41:54 +02:00
Wojtek Porczyk
a82bf7cc54 qubes/tests: Move unit tests inside qubes/, add runner 2015-06-29 17:39:24 +02:00
Wojtek Porczyk
c414ab6df0 tests: fix VMCollection tests 2015-06-29 17:39:24 +02:00
Wojtek Porczyk
41fef46db2 core3 move: QubesVM
This is a big commit and probably incomplete. Tests will follow.
2015-06-29 17:39:24 +02:00
Wojtek Porczyk
ef4f00dac0 qubes/vm: DeviceManager class for herding devices
collections.defaultdict was not enough, because it cannot pass any arguments to
factory. We need to pass domain object and device class to fire events on attach
and detach.
2015-06-29 17:39:24 +02:00
Wojtek Porczyk
855a434879 core3: event framework adjusted for global Qubes object
From now, global events are emitted by qubes.Qubes object and handlers are registered there.
2015-06-29 17:39:24 +02:00
Wojtek Porczyk
b623a71d87 core3 move: QubesVmCollection
This got split to qubes.Qubes and qubes.VMCollection.
From now on, VMCollection is a stupid bag. Some parts went elsewhere.
2015-06-29 17:39:23 +02:00
Wojtek Porczyk
6146c8e466 QubesVmLabel: XML parsing 2015-06-29 17:39:23 +02:00
Wojtek Porczyk
87ae0112eb qubes/vm: New XML format loading 2015-06-29 17:39:23 +02:00
Marek Marczykowski-Górecki
8134360614 tests: fix skipping whonix in timezone test 2015-06-27 05:05:34 +02:00
Marek Marczykowski-Górecki
3867d1fdb3 tests: check timezone dom0->vm propagation 2015-06-27 04:47:27 +02:00
Marek Marczykowski-Górecki
ed9b4bfc54 tests: check firewall rules blocking VM IP spoofing 2015-06-27 04:46:17 +02:00
Marek Marczykowski-Górecki
8b4c9b23b3 tests: hide git check warning 2015-06-27 04:19:07 +02:00
Marek Marczykowski-Górecki
236dca29a8 tests/network: add support for Debian's default netcat implementation
By default Debian has different nc installed, which requires different
options.
2015-06-21 02:08:02 +02:00
Marek Marczykowski-Górecki
33f0fa17b8 tests: fix clipboard tess 2015-06-21 01:12:47 +02:00
Marek Marczykowski-Górecki
db28551807 tests: update backup tests
Since default netvm name was changed, the restore process need to set
'use-default-netvm' flag.
2015-04-14 23:10:18 +02:00
Marek Marczykowski-Górecki
75e9c8aff0 tests: test for netvm/dispvm_netvm
Check:
 - default value
 - setting to None
 - setting to a VM
 - resetting to default
 - setting invalid value
2015-04-06 02:53:18 +02:00
Marek Marczykowski-Górecki
ea92f5d491 tests: improve clipboard test
To not use gnome-terminal, but much simpler zenity. This fixes some
race-conditions in the test itself.
2015-04-01 05:24:24 +02:00
Wojtek Porczyk
20b3fdedb8 rename netvm -> sys-net, firewallvm -> sys-firewall 2015-03-31 20:42:53 +02:00
Marek Marczykowski-Górecki
b3899ba81a tests: enable long messages by default 2015-03-31 05:14:42 +02:00
Marek Marczykowski-Górecki
d0b3d15212 tests: add a test for secure clipboard 2015-03-31 05:14:18 +02:00
Marek Marczykowski-Górecki
b563cf290e tests: fix firewall test - use the IP, not the ping command... 2015-03-30 22:33:08 +02:00
Marek Marczykowski-Górecki
20c32e7233 tests: give firewallvm more time to apply the rules
Not everyone use fast SSD drive and 4+ core CPU...
2015-03-30 22:31:11 +02:00
Marek Marczykowski-Górecki
961ae3588f tests: force gnome-terminal title, so we can find the window
Debian do not use hostname in gnome-terminal window title by default, so
the test failed there, even when DispVM was started correctly.
Additionally we can't rely on gnome-terminal --title, as it isn't
working on Debian 8...
2015-03-30 21:32:13 +02:00
Marek Marczykowski-Górecki
cba8c6430c tests: do not rely on gedit being the default editor
Handle gedit, emacs and vim.
2015-03-30 16:18:09 +02:00
Marek Marczykowski-Górecki
c6f136869e tests: fix handling tests list from cmdline
Previous approach didn't worked for dynamically generated tests.
2015-03-30 01:40:39 +02:00
Marek Marczykowski-Górecki
e8a1e3469e tests/network: release QubesVmCollection lock before starting any VM 2015-03-29 17:33:34 +02:00
Marek Marczykowski-Górecki
999698bd68 core: rename create_xenstore_entries, get rid of xid parameter
It have nothing to do with xenstore, so change the name to not mislead.
Also get rid of unused "xid" parameter - we should use XID as little as
possible, because it is not a simple task to keep it current.
2015-03-28 22:36:28 +01:00
Marek Marczykowski-Górecki
96cd341162 tests: typo fix 2015-03-25 00:48:01 +01:00
Marek Marczykowski-Górecki
55f7556c41 tests: include dom0 update tests by default
Looks like an oversight.
2015-03-25 00:47:56 +01:00
Marek Marczykowski-Górecki
fbd96532e8 tests: automatically iterate tests over templates 2015-03-22 03:32:01 +01:00
Marek Marczykowski-Górecki
20e4e26111 tests: add missing skip if no xdotool installed 2015-03-22 01:40:19 +01:00
Marek Marczykowski-Górecki
246d0f4609 tests: if xdotool is not installed, skip tests that uses it 2015-03-19 23:17:34 +01:00
Marek Marczykowski-Górecki
370057bad3 tests: unlock qubes.xml after creating VMs
Otherwise it could cause deadlocks.
2015-03-19 23:17:20 +01:00
Marek Marczykowski-Górecki
304ed1dec5 Merge remote-tracking branch 'woju/wip-tests' 2015-03-07 02:48:21 +01:00
Wojciech Zygmunt Porczyk
ad7c6d0dec tests/run: add option to list available tests 2015-03-05 15:38:59 +01:00
Wojciech Zygmunt Porczyk
95ae3f44aa Revert "tests: use dot to separate test name components"
This reverts commit 454788d459.
2015-03-05 15:38:16 +01:00
Wojciech Zygmunt Porczyk
f61045178a tests: add --do-not-clean 2015-03-05 15:38:10 +01:00
Marek Marczykowski-Górecki
d6ea80eb5c tests: wait before pressing ctrl-s in gedit
Apparently gedit doesn't handle well fast keystrokes flow.
2015-03-04 02:21:47 +01:00
Marek Marczykowski-Górecki
c5ffba8eb7 tests: save qubes.xml after preparing VMs to backup 2015-02-22 18:24:18 +01:00
Marek Marczykowski-Górecki
1f30a03a09 tests: fix handling old backup format 2015-02-22 16:18:39 +01:00
Marek Marczykowski-Górecki
67ea5bc441 tests: encourage to release the lock after completing the setup
Many functions and especially standalone tools takes the lock itself, so
to prevent deadlocks, as a rule execute the tests with lock released.

Also reload qubes.xml before cleanup.
2015-02-22 01:26:38 +01:00
Marek Marczykowski-Górecki
b858488719 Merge remote-tracking branch 'woju/master' 2015-02-21 03:09:29 +01:00
Marek Marczykowski-Górecki
454788d459 tests: use dot to separate test name components
This way the name can be directly copied to cmdline to rerun that
particular test.
2015-02-21 00:39:19 +01:00
Marek Marczykowski-Górecki
e65842322a core: hold the lock after QubesVmCollection.save()
The statement that unlock_db() is always called directly after save() is
no longer true - tests holds the lock all the time, doing multiple saves
in the middle.
2015-02-21 00:25:50 +01:00