Merge pull request #824 from izn/chore/add-libvirtvms-tests

Create libvirtvms tests
This commit is contained in:
tobi-wan-kenobi 2021-10-12 17:06:04 +02:00 committed by GitHub
commit 618a22c122
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,7 +1,48 @@
import sys
import pytest import pytest
from unittest.mock import Mock
pytest.importorskip("libvirt") import core.config
sys.modules['libvirt'] = Mock()
import modules.contrib.libvirtvms
def build_module():
return modules.contrib.libvirtvms.Module(
config=core.config.Config([]),
theme=None
)
def test_load_module(): def test_load_module():
__import__("modules.contrib.libvirtvms") __import__("modules.contrib.libvirtvms")
def test_input_registration(mocker):
input_register = mocker.patch('core.input.register')
module = build_module()
input_register.assert_called_with(
module,
button=core.input.LEFT_MOUSE,
cmd="virt-manager"
)
def test_status_failed(mocker):
mocker.patch('libvirt.openReadOnly', return_value=None)
module = build_module()
status = module.status(None)
assert status == "Failed to open connection to the hypervisor"
def test_status(mocker):
virtMock = mocker.Mock()
virtMock.numOfDomains = mocker.Mock(return_value=10)
mocker.patch('libvirt.openReadOnly', return_value=virtMock)
module = build_module()
status = module.status(None)
assert status == "VMs 10"