Skip to content

Commit cde4e2a

Browse files
tests/qemudriver: add on/off and read/write tests
Signed-off-by: Bastian Krause <[email protected]>
1 parent 5920931 commit cde4e2a

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

tests/test_qemudriver.py

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,46 @@ def qemu_driver(qemu_target):
4141
rootfs='rootfs')
4242
return q
4343

44+
@pytest.fixture
45+
def qemu_mock(mocker):
46+
popen_mock = mocker.patch('subprocess.Popen')
47+
popen_mock.return_value.wait.return_value = 0
48+
popen_mock.return_value.stdout.readline.return_value = b"""
49+
{
50+
"QMP": {
51+
"version": {}
52+
},
53+
"return": {}
54+
}
55+
"""
56+
57+
select_mock = mocker.patch('select.select')
58+
select_mock.return_value = True, None, None
59+
60+
socket_mock = mocker.patch('socket.socket')
61+
socket_mock.return_value.accept.return_value = mocker.MagicMock(), ''
62+
4463
def test_qemu_instance(qemu_target, qemu_driver):
4564
assert (isinstance(qemu_driver, QEMUDriver))
4665

4766
def test_qemu_activate_deactivate(qemu_target, qemu_driver):
4867
qemu_target.activate(qemu_driver)
4968
qemu_target.deactivate(qemu_driver)
69+
70+
def test_qemu_on_off(qemu_target, qemu_driver, qemu_mock):
71+
qemu_target.activate(qemu_driver)
72+
73+
qemu_driver.on()
74+
qemu_driver.off()
75+
76+
qemu_target.deactivate(qemu_driver)
77+
78+
def test_qemu_read_write(qemu_target, qemu_driver, qemu_mock):
79+
qemu_target.activate(qemu_driver)
80+
81+
qemu_driver.on()
82+
qemu_driver.read()
83+
qemu_driver.read(max_size=10)
84+
qemu_driver.write(b'abc')
85+
86+
qemu_target.deactivate(qemu_driver)

0 commit comments

Comments
 (0)