mirror of
https://github.com/virt-manager/virt-manager.git
synced 2024-12-22 13:34:07 +03:00
tests: Add unit test coverage for #539
Signed-off-by: Cole Robinson <crobinso@redhat.com>
This commit is contained in:
parent
6e5c1db6b4
commit
19b0f3f446
22
tests/data/xmlparse/emulator-custom.xml
Normal file
22
tests/data/xmlparse/emulator-custom.xml
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
<domain type='kvm'>
|
||||||
|
<name>manual-emulator-test</name>
|
||||||
|
<metadata>
|
||||||
|
<libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
|
||||||
|
<libosinfo:os id="http://fedoraproject.org/fedora/unknown"/>
|
||||||
|
</libosinfo:libosinfo>
|
||||||
|
</metadata>
|
||||||
|
<memory unit='KiB'>8388608</memory>
|
||||||
|
<currentMemory unit='KiB'>8388608</currentMemory>
|
||||||
|
<vcpu placement='static'>8</vcpu>
|
||||||
|
<os>
|
||||||
|
<type arch='mips' machine='some-unknown-machine'>hvm</type>
|
||||||
|
<boot dev='hd'/>
|
||||||
|
</os>
|
||||||
|
<on_poweroff>destroy</on_poweroff>
|
||||||
|
<on_reboot>restart</on_reboot>
|
||||||
|
<on_crash>destroy</on_crash>
|
||||||
|
<devices>
|
||||||
|
<emulator>/my/manual/emulator</emulator>
|
||||||
|
</devices>
|
||||||
|
</domain>
|
||||||
|
|
@ -1170,3 +1170,34 @@ def testDiskSourceAbspath():
|
|||||||
# ...unless it's a URL
|
# ...unless it's a URL
|
||||||
disk.set_source_path("http://example.com/foobar3")
|
disk.set_source_path("http://example.com/foobar3")
|
||||||
assert disk.get_source_path() == "http://example.com/foobar3"
|
assert disk.get_source_path() == "http://example.com/foobar3"
|
||||||
|
|
||||||
|
|
||||||
|
def testUnknownEmulatorDomcapsLookup(monkeypatch):
|
||||||
|
"""
|
||||||
|
Libvirt can handle defining a VM with a custom emulator, one not detected
|
||||||
|
by `virsh capabilities`. An appropriate `virsh domcapabilities` call will
|
||||||
|
inspect the emulator and return relevant info.
|
||||||
|
|
||||||
|
This test ensures that for parsing XML the `virsh capabilities` failure
|
||||||
|
isn't fatal, and we attempt to return valid `virsh domcapabilities` data
|
||||||
|
"""
|
||||||
|
|
||||||
|
seen = False
|
||||||
|
def fake_build_from_params(conn, emulator, arch, machine, hvtype):
|
||||||
|
nonlocal seen
|
||||||
|
seen = True
|
||||||
|
assert arch == "mips"
|
||||||
|
assert machine == "some-unknown-machine"
|
||||||
|
assert emulator == "/my/manual/emulator"
|
||||||
|
return virtinst.DomainCapabilities(conn)
|
||||||
|
|
||||||
|
monkeypatch.setattr(
|
||||||
|
"virtinst.DomainCapabilities.build_from_params",
|
||||||
|
fake_build_from_params)
|
||||||
|
|
||||||
|
conn = utils.URIs.open_kvm()
|
||||||
|
xml = open(DATADIR + "emulator-custom.xml").read()
|
||||||
|
guest = virtinst.Guest(conn, xml)
|
||||||
|
assert guest.lookup_domcaps()
|
||||||
|
assert guest.lookup_domcaps()
|
||||||
|
assert seen
|
||||||
|
Loading…
Reference in New Issue
Block a user