uitests: More use of safer utility helpers
Signed-off-by: Cole Robinson <crobinso@redhat.com>
This commit is contained in:
parent
eea394b9d3
commit
a289676574
|
@ -152,10 +152,10 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab.combo_select("Discard mode:", "ignore")
|
||||
tab.combo_select("Detect zeroes:", "unmap")
|
||||
# Size too big
|
||||
tab.find("GiB", "spin button").text = "2000"
|
||||
tab.find("GiB", "spin button").set_text("2000")
|
||||
self._finish(addhw, check=None)
|
||||
self._click_alert_button("not enough free space", "Close")
|
||||
tab.find("GiB", "spin button").text = "1.5"
|
||||
tab.find("GiB", "spin button").set_text("1.5")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
# Managed storage tests
|
||||
|
@ -172,7 +172,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
browse.find("vol-new", "push button").click()
|
||||
newvol = self.app.root.find("Add a Storage Volume", "frame")
|
||||
newname = "a-newvol"
|
||||
newvol.find("Name:", "text").text = newname
|
||||
newvol.find("Name:", "text").set_text(newname)
|
||||
newvol.find("Finish", "push button").click()
|
||||
uiutils.check(lambda: not newvol.showing)
|
||||
volcell = browse.find(newname, "table cell")
|
||||
|
@ -221,7 +221,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab.combo_select("Device type:", "Floppy device")
|
||||
diskradio = tab.find_fuzzy("Create a disk image", "radio")
|
||||
uiutils.check(lambda: not diskradio.sensitive)
|
||||
tab.find("storage-entry").text = "/dev/default-pool/bochs-vol"
|
||||
tab.find("storage-entry").set_text("/dev/default-pool/bochs-vol")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
# empty cdrom
|
||||
|
@ -244,7 +244,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab = self._select_hw(addhw, "Storage", "storage-tab")
|
||||
tab.find_fuzzy("Select or create", "radio").click()
|
||||
path = tmpdir + "/foo1.img"
|
||||
tab.find("storage-entry").text = path
|
||||
tab.find("storage-entry").set_text(path)
|
||||
self._finish(addhw, check=None)
|
||||
self._click_alert_button("emulator may not have", "No")
|
||||
uiutils.check(lambda: details.active)
|
||||
|
@ -254,7 +254,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab = self._select_hw(addhw, "Storage", "storage-tab")
|
||||
tab.find_fuzzy("Select or create", "radio").click()
|
||||
path = tmpdir + "/foo2.img"
|
||||
tab.find("storage-entry").text = path
|
||||
tab.find("storage-entry").set_text(path)
|
||||
self._finish(addhw, check=None)
|
||||
alert = self.app.root.find_fuzzy("vmm dialog", "alert")
|
||||
alert.find_fuzzy("Don't ask", "check box").click()
|
||||
|
@ -266,7 +266,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab = self._select_hw(addhw, "Storage", "storage-tab")
|
||||
tab.find_fuzzy("Select or create", "radio").click()
|
||||
path = tmpdir + "/foo3.img"
|
||||
tab.find("storage-entry").text = path
|
||||
tab.find("storage-entry").set_text(path)
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
@_search_permissions_decorator
|
||||
|
@ -282,7 +282,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab = self._select_hw(addhw, "Storage", "storage-tab")
|
||||
tab.find_fuzzy("Select or create", "radio").click()
|
||||
path = tmpdir + "/foo1.img"
|
||||
tab.find("storage-entry").text = path
|
||||
tab.find("storage-entry").set_text(path)
|
||||
self._finish(addhw, check=None)
|
||||
self._click_alert_button("emulator may not have", "Yes")
|
||||
uiutils.check(lambda: details.active)
|
||||
|
@ -292,7 +292,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab = self._select_hw(addhw, "Storage", "storage-tab")
|
||||
tab.find_fuzzy("Select or create", "radio").click()
|
||||
path = tmpdir + "/foo3.img"
|
||||
tab.find("storage-entry").text = path
|
||||
tab.find("storage-entry").set_text(path)
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
@_search_permissions_decorator
|
||||
|
@ -309,7 +309,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab = self._select_hw(addhw, "Storage", "storage-tab")
|
||||
tab.find_fuzzy("Select or create", "radio").click()
|
||||
path = tmpdir + "/foo1.img"
|
||||
tab.find("storage-entry").text = path
|
||||
tab.find("storage-entry").set_text(path)
|
||||
self._finish(addhw, check=None)
|
||||
self._click_alert_button("emulator may not have", "Yes")
|
||||
alert = self.app.root.find("vmm dialog", "alert")
|
||||
|
@ -323,7 +323,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab = self._select_hw(addhw, "Storage", "storage-tab")
|
||||
tab.find_fuzzy("Select or create", "radio").click()
|
||||
path = tmpdir + "/foo2.img"
|
||||
tab.find("storage-entry").text = path
|
||||
tab.find("storage-entry").set_text(path)
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
def testAddNetworks(self):
|
||||
|
@ -336,7 +336,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
# Basic network + opts
|
||||
tab = self._select_hw(addhw, "Network", "network-tab")
|
||||
tab.combo_select("net-source", "Virtual network 'default'")
|
||||
tab.find("MAC Address Field", "text").text = "00:11:00:11:00:11"
|
||||
tab.find("MAC Address Field", "text").set_text("00:11:00:11:00:11")
|
||||
tab.combo_select("Device model:", "virtio")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
|
@ -344,7 +344,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
self._open_addhw_window(details)
|
||||
tab = self._select_hw(addhw, "Network", "network-tab")
|
||||
tab.combo_select("net-source", "Macvtap device...")
|
||||
tab.find("Device name:", "text").text = "macvtapfoo7"
|
||||
tab.find("Device name:", "text").set_text("macvtapfoo7")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
# Manual bridge. Also trigger MAC collision
|
||||
|
@ -352,14 +352,14 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab = self._select_hw(addhw, "Network", "network-tab")
|
||||
tab.find("mac-address-enable", "check box").click()
|
||||
tab.combo_select("net-source", "Bridge device...")
|
||||
tab.find("Device name:", "text").text = "zbr0"
|
||||
tab.find("Device name:", "text").set_text("zbr0")
|
||||
self._finish(addhw, check=None)
|
||||
# Check MAC validation error
|
||||
self._click_alert_button("00:11:22:33:44:55", "Close")
|
||||
|
||||
# Fix MAC
|
||||
tab.find("mac-address-enable", "check box").click()
|
||||
tab.find("MAC Address Field", "text").text = "00:11:0A:11:00:11"
|
||||
tab.find("MAC Address Field", "text").set_text("00:11:0A:11:00:11")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
|
||||
|
@ -376,7 +376,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab.combo_select("Listen type:", "Address")
|
||||
tab.combo_select("Address:", "All interfaces")
|
||||
tab.find("graphics-port-auto", "check").click()
|
||||
tab.find("graphics-port", "spin button").text = "1234"
|
||||
tab.find("graphics-port", "spin button").set_text("1234")
|
||||
tab.find("Password:", "check").click()
|
||||
passwd = tab.find_fuzzy("graphics-password", "text")
|
||||
newpass = "foobar"
|
||||
|
@ -388,7 +388,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
self._finish(addhw, check=None)
|
||||
# Catch a port error
|
||||
self._click_alert_button("Port must be above 5900", "Close")
|
||||
tab.find("graphics-port", "spin button").text = "5920"
|
||||
tab.find("graphics-port", "spin button").set_text("5920")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
# Spice regular example
|
||||
|
@ -462,7 +462,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
self._open_addhw_window(details)
|
||||
tab = self._select_hw(addhw, "Serial", "char-tab")
|
||||
tab.combo_select("Device Type:", "Output to a file")
|
||||
tab.find("Path:", "text").text = "/tmp/foo.log"
|
||||
tab.find("Path:", "text").set_text("/tmp/foo.log")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
self._open_addhw_window(details)
|
||||
|
@ -495,7 +495,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab.combo_select("Format:", "qcow2")
|
||||
|
||||
source = tab.find("Source path:", "text")
|
||||
source.text = "/foo/source"
|
||||
source.set_text("/foo/source")
|
||||
tab.find("Browse...", "push button").click()
|
||||
# Specific testing for dir vol handling for filesystem browse
|
||||
browsewin = self.app.root.find("vmm-storage-browser")
|
||||
|
@ -513,18 +513,18 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab.find_fuzzy("Export filesystem", "check").click()
|
||||
# Use this to test some error.py logic for truncating large errors
|
||||
badtarget = "a" * 1024
|
||||
tab.find("Target path:", "text").text = badtarget
|
||||
tab.find("Target path:", "text").set_text(badtarget)
|
||||
self._finish(addhw, check=None)
|
||||
self._click_alert_button("aaa...", "Close")
|
||||
tab.find("Target path:", "text").text = "/foo/target"
|
||||
tab.find("Target path:", "text").set_text("/foo/target")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
# Add RAM type
|
||||
self._open_addhw_window(details)
|
||||
tab = self._select_hw(addhw, "Filesystem", "filesystem-tab")
|
||||
tab.combo_select("Type:", "Ram")
|
||||
tab.find("Usage:", "spin button").text = "12345"
|
||||
tab.find("Target path:", "text").text = "/mem"
|
||||
tab.find("Usage:", "spin button").set_text("12345")
|
||||
tab.find("Target path:", "text").set_text("/mem")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
|
||||
|
@ -592,8 +592,8 @@ class AddHardware(uiutils.UITestCase):
|
|||
# Add basic filesystem
|
||||
self._open_addhw_window(details)
|
||||
tab = self._select_hw(addhw, "Filesystem", "filesystem-tab")
|
||||
tab.find("Source path:", "text").text = "/foo/source"
|
||||
tab.find("Target path:", "text").text = "/foo/target"
|
||||
tab.find("Source path:", "text").set_text("/foo/source")
|
||||
tab.find("Target path:", "text").set_text("/foo/target")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
# Add TPM passthrough
|
||||
|
@ -601,13 +601,13 @@ class AddHardware(uiutils.UITestCase):
|
|||
tab = self._select_hw(addhw, "TPM", "tpm-tab")
|
||||
tab.combo_select("Model:", "TIS")
|
||||
tab.combo_select("Backend:", "Passthrough")
|
||||
tab.find("Device Path:", "text").text = "/tmp/foo"
|
||||
tab.find("Device Path:", "text").set_text("/tmp/foo")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
# Add RNG
|
||||
self._open_addhw_window(details)
|
||||
tab = self._select_hw(addhw, "RNG", "rng-tab")
|
||||
tab.find("Host Device:", "text").text = "/dev/random"
|
||||
tab.find("Host Device:", "text").set_text("/dev/random")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
# Add Panic
|
||||
|
@ -620,7 +620,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
self._open_addhw_window(details)
|
||||
tab = self._select_hw(addhw, "VirtIO VSOCK", "vsock-tab")
|
||||
tab.find("vsock-auto").click()
|
||||
tab.find("vsock-cid").text = "7"
|
||||
tab.find("vsock-cid").set_text("7")
|
||||
self._finish(addhw, check=details)
|
||||
|
||||
def testAddHWUSBNone(self):
|
||||
|
@ -641,7 +641,7 @@ class AddHardware(uiutils.UITestCase):
|
|||
addhw = self._open_addhw_window(details)
|
||||
tab = self._select_hw(addhw, "Controller", "controller-tab")
|
||||
combo = tab.find("Type:", "combo box")
|
||||
combo.find(None, "text").text = "foobar"
|
||||
combo.find(None, "text").set_text("foobar")
|
||||
self._finish(addhw, check=None)
|
||||
self._click_alert_button("Unable to add device", "Close")
|
||||
uiutils.check(lambda: addhw.active)
|
||||
|
@ -691,14 +691,14 @@ class AddHardware(uiutils.UITestCase):
|
|||
xmleditor = win.find("XML editor")
|
||||
origpath = "/var/lib/libvirt/images/test-clone-simple.qcow2"
|
||||
newpath = "/FOO/XMLEDIT/test1.img"
|
||||
xmleditor.text = xmleditor.text.replace(origpath, newpath)
|
||||
xmleditor.set_text(xmleditor.text.replace(origpath, newpath))
|
||||
self._finish(win, check=None)
|
||||
self._click_alert_button("non-existent path", "Close")
|
||||
|
||||
# Undo the bad change, change bus/target
|
||||
xmleditor.text = xmleditor.text.replace(newpath, origpath)
|
||||
xmleditor.text = xmleditor.text.replace("hdb", "xvda")
|
||||
xmleditor.text = xmleditor.text.replace("ide", "xen")
|
||||
xmleditor.set_text(xmleditor.text.replace(newpath, origpath))
|
||||
xmleditor.set_text(xmleditor.text.replace("hdb", "xvda"))
|
||||
xmleditor.set_text(xmleditor.text.replace("ide", "xen"))
|
||||
self._finish(win, check=details)
|
||||
|
||||
# Verify the changes applied
|
||||
|
|
|
@ -63,18 +63,18 @@ class CloneVM(uiutils.UITestCase):
|
|||
"""
|
||||
win = self._open_window("test-clone-simple")
|
||||
win.find_fuzzy(None,
|
||||
"text", "Name").text = "test-new-vm"
|
||||
"text", "Name").set_text("test-new-vm")
|
||||
|
||||
win.find("Details...", "push button").click()
|
||||
macwin = self.app.root.find("Change MAC address", "dialog")
|
||||
macwin.find(None,
|
||||
"text", "New MAC:").text = "00:16:3e:cc:cf:05"
|
||||
"text", "New MAC:").set_text("00:16:3e:cc:cf:05")
|
||||
macwin.find("OK", "push button").click()
|
||||
|
||||
win.combo_select("Clone this disk.*", "Details...")
|
||||
stgwin = self.app.root.find("Change storage path", "dialog")
|
||||
stgwin.find(None, "text",
|
||||
"New Path:").text = "/dev/default-pool/my-new-path"
|
||||
"New Path:").set_text("/dev/default-pool/my-new-path")
|
||||
stgwin.find("OK", "push button").click()
|
||||
|
||||
win.find("Clone", "push button").click()
|
||||
|
|
|
@ -77,14 +77,14 @@ class VMMConnect(uiutils.UITestCase):
|
|||
# fall back to the dialog
|
||||
win.combo_select("Hypervisor", "Xen")
|
||||
remote.click()
|
||||
user.text = "fribuser"
|
||||
user.set_text("fribuser")
|
||||
connect.click()
|
||||
self._click_alert_button("hostname is required", "OK")
|
||||
fakeipv6 = "fe80::1"
|
||||
host.text = fakeipv6
|
||||
host.set_text(fakeipv6)
|
||||
uiutils.check(lambda: urilabel.text == "xen+ssh://fribuser@[%s]/" % fakeipv6)
|
||||
fakehost = "ix8khfyidontexistkdjur.com"
|
||||
host.text = fakehost + ":12345"
|
||||
host.set_text(fakehost + ":12345")
|
||||
uiutils.check(lambda: urilabel.text == "xen+ssh://fribuser@%s:12345/" % fakehost)
|
||||
connect.click()
|
||||
|
||||
|
@ -111,7 +111,7 @@ class VMMConnect(uiutils.UITestCase):
|
|||
self.app.root.find("Add Connection...", "menu item").click()
|
||||
win = self.app.root.find_fuzzy("Add Connection", "dialog")
|
||||
win.combo_select("Hypervisor", "Custom URI")
|
||||
urientry.text = "test:///default"
|
||||
urientry.set_text("test:///default")
|
||||
connect.click()
|
||||
|
||||
# Do it again to make sure things don't explode
|
||||
|
@ -120,7 +120,7 @@ class VMMConnect(uiutils.UITestCase):
|
|||
self.app.root.find("Add Connection...", "menu item").click()
|
||||
win = self.app.root.find_fuzzy("Add Connection", "dialog")
|
||||
win.combo_select("Hypervisor", "Custom URI")
|
||||
urientry.text = "test:///default"
|
||||
urientry.set_text("test:///default")
|
||||
connect.click()
|
||||
|
||||
# Try various connect/disconnect routines
|
||||
|
|
|
@ -32,7 +32,7 @@ class CreateNet(uiutils.UITestCase):
|
|||
finish = win.find("Finish", "push button")
|
||||
uiutils.check(lambda: name.text == "network")
|
||||
newname = "a-test-new-net"
|
||||
name.text = newname
|
||||
name.set_text(newname)
|
||||
finish.click()
|
||||
|
||||
# Select the new network in the host window, then do
|
||||
|
@ -74,11 +74,11 @@ class CreateNet(uiutils.UITestCase):
|
|||
# Create a new obj with XML edited name, verify it worked
|
||||
tmpname = "objtmpname"
|
||||
newname = "froofroo"
|
||||
name.text = tmpname
|
||||
name.set_text(tmpname)
|
||||
win.find("XML", "page tab").click()
|
||||
xmleditor = win.find("XML editor")
|
||||
xmleditor.text = xmleditor.text.replace(
|
||||
">%s<" % tmpname, ">%s<" % newname)
|
||||
newtext = xmleditor.text.replace(">%s<" % tmpname, ">%s<" % newname)
|
||||
xmleditor.set_text(newtext)
|
||||
finish.click()
|
||||
uiutils.check(lambda: hostwin.active)
|
||||
cell = hostwin.find(newname, "table cell")
|
||||
|
@ -107,11 +107,11 @@ class CreateNet(uiutils.UITestCase):
|
|||
finish = win.find("Finish", "push button")
|
||||
|
||||
# Create a network with a bunch of options
|
||||
win.find("Name:", "text").text = "default"
|
||||
win.find("Name:", "text").set_text("default")
|
||||
win.find("net-mode").click()
|
||||
win.find("Isolated", "menu item").click()
|
||||
win.find("IPv4 configuration").click_expander()
|
||||
win.find("ipv4-network").text = "192.168.100.0/25"
|
||||
win.find("ipv4-network").set_text("192.168.100.0/25")
|
||||
ipv4start = win.find("ipv4-start")
|
||||
ipv4end = win.find("ipv4-end")
|
||||
uiutils.check(lambda: ipv4start.text == "192.168.100.64")
|
||||
|
@ -121,26 +121,26 @@ class CreateNet(uiutils.UITestCase):
|
|||
win.find("IPv6 configuration").click_expander()
|
||||
win.find("Enable IPv6").click()
|
||||
win.find("Enable DHCPv6").click()
|
||||
win.find("ipv6-network").text = "fd00:beef:10:6::1/64"
|
||||
win.find("ipv6-start").text = "fd00:beef:10:6::1:1"
|
||||
win.find("ipv6-end").text = "bad"
|
||||
win.find("ipv6-network").set_text("fd00:beef:10:6::1/64")
|
||||
win.find("ipv6-start").set_text("fd00:beef:10:6::1:1")
|
||||
win.find("ipv6-end").set_text("bad")
|
||||
win.find("DNS domain name").click_expander()
|
||||
win.find("Custom").click()
|
||||
win.find("domain-custom").text = "mydomain"
|
||||
win.find("domain-custom").set_text("mydomain")
|
||||
finish.click()
|
||||
# Name collision validation
|
||||
self._click_alert_button("in use by another network", "Close")
|
||||
win.find("Name:", "text").text = "newnet1"
|
||||
win.find("Name:", "text").set_text("newnet1")
|
||||
finish.click()
|
||||
# XML define error
|
||||
self._click_alert_button("Error creating virtual network", "Close")
|
||||
win.find("ipv6-end").text = "fd00:beef:10:6::1:f1"
|
||||
win.find("ipv6-end").set_text("fd00:beef:10:6::1:f1")
|
||||
finish.click()
|
||||
uiutils.check(lambda: hostwin.active)
|
||||
|
||||
# More option work
|
||||
win = self._open_create_win(hostwin)
|
||||
win.find("Name:", "text").text = "newnet2"
|
||||
win.find("Name:", "text").set_text("newnet2")
|
||||
devicelist = win.find("net-devicelist")
|
||||
uiutils.check(lambda: not devicelist.visible)
|
||||
win.find("net-mode").click()
|
||||
|
@ -152,7 +152,7 @@ class CreateNet(uiutils.UITestCase):
|
|||
win.find("Routed", "menu item").click()
|
||||
win.find("net-forward").click()
|
||||
win.find("Physical device", "menu item").click()
|
||||
win.find("net-device").text = "fakedev0"
|
||||
win.find("net-device").set_text("fakedev0")
|
||||
finish.click()
|
||||
uiutils.check(lambda: hostwin.active)
|
||||
|
||||
|
|
|
@ -40,7 +40,7 @@ class CreatePool(uiutils.UITestCase):
|
|||
# Create a simple default dir pool
|
||||
uiutils.check(lambda: name.text == "pool")
|
||||
newname = "a-test-new-pool"
|
||||
name.text = newname
|
||||
name.set_text(newname)
|
||||
finish.click()
|
||||
|
||||
# Select the new object in the host window, then do
|
||||
|
@ -72,7 +72,7 @@ class CreatePool(uiutils.UITestCase):
|
|||
win = self._open_create_win(hostwin)
|
||||
win.combo_select("Type:", "disk:")
|
||||
newname = "a-disk-pool"
|
||||
name.text = "a-disk-pool"
|
||||
name.set_text("a-disk-pool")
|
||||
win.find("source-browse").click()
|
||||
_browse_local_path("Choose source path", "console")
|
||||
finish.click()
|
||||
|
@ -82,16 +82,16 @@ class CreatePool(uiutils.UITestCase):
|
|||
win = self._open_create_win(hostwin)
|
||||
win.combo_select("Type:", "iscsi:")
|
||||
newname = "a-iscsi-pool"
|
||||
name.text = "a-iscsi-pool"
|
||||
name.set_text("a-iscsi-pool")
|
||||
win.find("target-browse").click()
|
||||
_browse_local_path("Choose target directory", "by-path")
|
||||
finish.click()
|
||||
# Catch example error
|
||||
self._click_alert_button("source host name", "Close")
|
||||
win.find("Host Name:", "text").text = "example.com"
|
||||
win.find("pool-source-path-text").text = "foo-iqn"
|
||||
win.find("Host Name:", "text").set_text("example.com")
|
||||
win.find("pool-source-path-text").set_text("foo-iqn")
|
||||
win.find_fuzzy("Initiator IQN:", "check").click()
|
||||
win.find("iqn-text", "text").text = "initiator-foo"
|
||||
win.find("iqn-text", "text").set_text("initiator-foo")
|
||||
finish.click()
|
||||
hostwin.find(newname, "table cell")
|
||||
|
||||
|
@ -99,7 +99,7 @@ class CreatePool(uiutils.UITestCase):
|
|||
win = self._open_create_win(hostwin)
|
||||
win.combo_select("Type:", "logical:")
|
||||
newname = "a-lvm-pool"
|
||||
name.text = "a-lvm-pool"
|
||||
name.set_text("a-lvm-pool")
|
||||
|
||||
win.combo_check_default("Volgroup", "testvg1")
|
||||
win.combo_select("Volgroup", "testvg2")
|
||||
|
@ -110,7 +110,7 @@ class CreatePool(uiutils.UITestCase):
|
|||
win = self._open_create_win(hostwin)
|
||||
win.combo_select("Type:", "scsi:")
|
||||
newname = "a-scsi-pool"
|
||||
name.text = "a-scsi-pool"
|
||||
name.set_text("a-scsi-pool")
|
||||
win.combo_select("Source Adapter:", "host2")
|
||||
finish.click()
|
||||
hostwin.find(newname, "table cell")
|
||||
|
@ -118,9 +118,9 @@ class CreatePool(uiutils.UITestCase):
|
|||
# Test a ceph pool
|
||||
win = self._open_create_win(hostwin)
|
||||
newname = "a-ceph-pool"
|
||||
name.text = "a-ceph-pool"
|
||||
name.set_text("a-ceph-pool")
|
||||
win.combo_select("Type:", "rbd:")
|
||||
win.find_fuzzy("Host Name:", "text").text = "example.com:1234"
|
||||
win.find_fuzzy("Host Name:", "text").set_text("example.com:1234")
|
||||
win.find_fuzzy("pool-source-name-text", "text").typeText("frob")
|
||||
finish.click()
|
||||
uiutils.check(lambda: not win.showing)
|
||||
|
@ -143,11 +143,11 @@ class CreatePool(uiutils.UITestCase):
|
|||
# Create a new obj with XML edited name, verify it worked
|
||||
tmpname = "objtmpname"
|
||||
newname = "froofroo"
|
||||
name.text = tmpname
|
||||
name.set_text(tmpname)
|
||||
win.find("XML", "page tab").click()
|
||||
xmleditor = win.find("XML editor")
|
||||
xmleditor.text = xmleditor.text.replace(
|
||||
">%s<" % tmpname, ">%s<" % newname)
|
||||
newtext = xmleditor.text.replace(">%s<" % tmpname, ">%s<" % newname)
|
||||
xmleditor.set_text(newtext)
|
||||
finish.click()
|
||||
uiutils.check(lambda: hostwin.active)
|
||||
cell = hostwin.find(newname, "table cell")
|
||||
|
|
|
@ -50,7 +50,7 @@ class NewVM(uiutils.UITestCase):
|
|||
self.app.root.find("Add Connection...", "menu item").click()
|
||||
win = self.app.root.find_fuzzy("Add Connection", "dialog")
|
||||
win.combo_select("Hypervisor", "Custom URI")
|
||||
win.find("uri-entry", "text").text = "test:///default"
|
||||
win.find("uri-entry", "text").set_text("test:///default")
|
||||
win.find("Connect", "push button").click()
|
||||
|
||||
# Open the new VM wizard, select a connection
|
||||
|
@ -148,7 +148,7 @@ class NewVM(uiutils.UITestCase):
|
|||
# test entry activation too
|
||||
entry = newvm.find("media-entry")
|
||||
entry.click()
|
||||
entry.text = "/dev/sr0"
|
||||
entry.set_text("/dev/sr0")
|
||||
self.pressKey("Enter")
|
||||
|
||||
# Select a fake iso
|
||||
|
@ -161,7 +161,7 @@ class NewVM(uiutils.UITestCase):
|
|||
# Change distro to win8
|
||||
newvm.find_fuzzy("Automatically detect", "check").click()
|
||||
osentry.click()
|
||||
osentry.text = "windows 8"
|
||||
osentry.set_text("windows 8")
|
||||
popover = newvm.find("oslist-popover")
|
||||
uiutils.check(lambda: popover.onscreen)
|
||||
# Verify Escape resets the text entry
|
||||
|
@ -169,7 +169,7 @@ class NewVM(uiutils.UITestCase):
|
|||
uiutils.check(lambda: not popover.onscreen)
|
||||
uiutils.check(lambda: osentry.text == "")
|
||||
# Re-enter text
|
||||
osentry.text = "windows 8"
|
||||
osentry.set_text("windows 8")
|
||||
uiutils.check(lambda: popover.onscreen)
|
||||
popover.find_fuzzy("include-eol").click()
|
||||
popover.find_fuzzy(r"\(win8\)").click()
|
||||
|
@ -177,7 +177,7 @@ class NewVM(uiutils.UITestCase):
|
|||
foundtext = osentry.text
|
||||
# Start typing again, and exit, make sure it resets to previous entry
|
||||
osentry.click()
|
||||
osentry.text = "foo"
|
||||
osentry.set_text("foo")
|
||||
uiutils.check(lambda: popover.onscreen)
|
||||
self.pressKey("Escape")
|
||||
uiutils.check(lambda: not popover.onscreen)
|
||||
|
@ -221,7 +221,7 @@ class NewVM(uiutils.UITestCase):
|
|||
appl = vmwindow.find("config-apply", "push button")
|
||||
hwlist = vmwindow.find("hw-list")
|
||||
tab = vmwindow.find("disk-tab")
|
||||
tab.find("Disk bus:", "text").text = "usb"
|
||||
tab.find("Disk bus:", "text").set_text("usb")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
# Device is now 'USB Disk 1'
|
||||
|
@ -235,7 +235,7 @@ class NewVM(uiutils.UITestCase):
|
|||
vmwindow.find_fuzzy("NIC", "table cell").click()
|
||||
tab = vmwindow.find("network-tab")
|
||||
tab.print_nodes()
|
||||
tab.find("mac-entry", "text").text = "00:11:00:11:00:11"
|
||||
tab.find("mac-entry", "text").set_text("00:11:00:11:00:11")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
||||
|
@ -263,9 +263,9 @@ class NewVM(uiutils.UITestCase):
|
|||
|
||||
url = "https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/10/Fedora/x86_64/os/"
|
||||
oslabel = "Fedora 10"
|
||||
newvm.find("install-url-entry").text = url
|
||||
newvm.find("install-url-entry").set_text(url)
|
||||
newvm.find("install-urlopts-expander").click_expander()
|
||||
newvm.find("install-urlopts-entry").text = "foo=bar"
|
||||
newvm.find("install-urlopts-entry").set_text("foo=bar")
|
||||
|
||||
uiutils.check(lambda: osentry.text == oslabel, timeout=10)
|
||||
|
||||
|
@ -316,9 +316,8 @@ class NewVM(uiutils.UITestCase):
|
|||
|
||||
newvm.find_fuzzy("Import", "radio").click()
|
||||
self.forward(newvm)
|
||||
newvm.find_fuzzy(None,
|
||||
"text", "existing storage").text = "/dev/default-pool/testvol1.img"
|
||||
newvm.find("oslist-entry").text = "fedora30"
|
||||
newvm.find("import-entry").set_text("/dev/default-pool/testvol1.img")
|
||||
newvm.find("oslist-entry").set_text("fedora30")
|
||||
popover = newvm.find("oslist-popover")
|
||||
popover.find("include-eol").click()
|
||||
popover.find_fuzzy("Fedora 30").click()
|
||||
|
@ -367,7 +366,7 @@ class NewVM(uiutils.UITestCase):
|
|||
|
||||
newvm.find_fuzzy("Manual", "radio").click()
|
||||
self.forward(newvm)
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
|
@ -418,9 +417,9 @@ class NewVM(uiutils.UITestCase):
|
|||
self.forward(newvm)
|
||||
|
||||
newvm.find_fuzzy("Automatically detect", "check").click()
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
newvm.find("media-entry").text = "/dev/default-pool/testvol1.img"
|
||||
newvm.find("media-entry").set_text("/dev/default-pool/testvol1.img")
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
newvm.find_fuzzy("Enable storage", "check box").click()
|
||||
|
@ -460,17 +459,10 @@ class NewVM(uiutils.UITestCase):
|
|||
uiutils.check(lambda: importradio.checked)
|
||||
self.forward(newvm)
|
||||
|
||||
# Set the import media details
|
||||
importentry = newvm.find_fuzzy(None, "text", "existing storage")
|
||||
# For some reason 'Import' doesn't take effect sometimes
|
||||
# And we end up in 'Manual' install mode, this will
|
||||
# make it explicit when it fails
|
||||
uiutils.check(lambda: importentry.onscreen)
|
||||
|
||||
importentry.text = "/dev/default-pool/default-vol"
|
||||
newvm.find("import-entry").set_text("/dev/default-pool/default-vol")
|
||||
# Make sure the info box shows up
|
||||
newvm.find("Kernel/initrd settings can be configured")
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm, check=False)
|
||||
|
||||
|
@ -496,7 +488,7 @@ class NewVM(uiutils.UITestCase):
|
|||
|
||||
# Set custom init
|
||||
apptext = newvm.find_fuzzy(None, "text", "application path")
|
||||
apptext.text = ""
|
||||
apptext.set_text("")
|
||||
self.forward(newvm, check=False)
|
||||
self._click_alert_button("path is required", "OK")
|
||||
newvm.find("install-app-browse").click()
|
||||
|
@ -522,13 +514,13 @@ class NewVM(uiutils.UITestCase):
|
|||
details.find("Boot Options", "table cell").click()
|
||||
tab = details.find("boot-tab")
|
||||
tab.print_nodes()
|
||||
tab.find("Init path:", "text").text = ""
|
||||
tab.find("Init args:", "text").text = "some args"
|
||||
tab.find("Init path:", "text").set_text("")
|
||||
tab.find("Init args:", "text").set_text("some args")
|
||||
appl = details.find("config-apply")
|
||||
appl.click()
|
||||
self._click_alert_button("init path must be specified", "OK")
|
||||
uiutils.check(lambda: appl.sensitive)
|
||||
tab.find("Init path:", "text").text = "/some/path"
|
||||
tab.find("Init path:", "text").set_text("/some/path")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
||||
|
@ -555,7 +547,7 @@ class NewVM(uiutils.UITestCase):
|
|||
newvm = self._open_create_wizard()
|
||||
newvm.find_fuzzy("Manual", "radio").click()
|
||||
self.forward(newvm)
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
|
@ -581,7 +573,7 @@ class NewVM(uiutils.UITestCase):
|
|||
newvm = self._open_create_wizard()
|
||||
newvm.find_fuzzy("Manual", "radio").click()
|
||||
self.forward(newvm)
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
|
@ -595,12 +587,12 @@ class NewVM(uiutils.UITestCase):
|
|||
# Test name change
|
||||
tab = details.find("overview-tab")
|
||||
nametext = tab.find("Name:", "text")
|
||||
nametext.text = "foonewname"
|
||||
nametext.set_text("foonewname")
|
||||
details.find("config-apply").click()
|
||||
self.app.root.find_fuzzy("foonewname", "frame")
|
||||
|
||||
# Trigger XML failure to hit some codepaths
|
||||
nametext.text = ""
|
||||
nametext.set_text("")
|
||||
details.find("Begin Installation").click()
|
||||
self._click_alert_button("unapplied changes", "Yes")
|
||||
self._click_alert_button("name must be specified", "Close")
|
||||
|
@ -626,7 +618,7 @@ class NewVM(uiutils.UITestCase):
|
|||
|
||||
# Set directory path
|
||||
dirtext = newvm.find_fuzzy(None, "text", "root directory")
|
||||
dirtext.text = ""
|
||||
dirtext.set_text("")
|
||||
self.forward(newvm, check=False)
|
||||
self._click_alert_button("path is required", "OK")
|
||||
|
||||
|
@ -654,7 +646,7 @@ class NewVM(uiutils.UITestCase):
|
|||
|
||||
# Set directory path
|
||||
newvm.find_fuzzy(None,
|
||||
"text", "container template").text = "centos-6-x86_64"
|
||||
"text", "container template").set_text("centos-6-x86_64")
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
newvm.find_fuzzy("Finish", "button").click()
|
||||
|
@ -680,9 +672,9 @@ class NewVM(uiutils.UITestCase):
|
|||
newvm.find_fuzzy("Create OS directory", "check box").click()
|
||||
rootdir = newvm.find_fuzzy(None, "text", "root directory")
|
||||
uiutils.check(lambda: ".local/share/libvirt" in rootdir.text)
|
||||
rootdir.text = tmpdir.name
|
||||
newvm.find("install-oscontainer-source-uri").text = "docker://alpine"
|
||||
newvm.find("install-oscontainer-root-passwd").text = "foobar"
|
||||
rootdir.set_text(tmpdir.name)
|
||||
newvm.find("install-oscontainer-source-uri").set_text("docker://alpine")
|
||||
newvm.find("install-oscontainer-root-passwd").set_text("foobar")
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
newvm.find_fuzzy("Finish", "button").click()
|
||||
|
@ -705,9 +697,8 @@ class NewVM(uiutils.UITestCase):
|
|||
|
||||
newvm.find_fuzzy("Import", "radio").click()
|
||||
self.forward(newvm)
|
||||
newvm.find_fuzzy(None,
|
||||
"text", "existing storage").text = "/dev/default-pool/testvol1.img"
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("import-entry").set_text("/dev/default-pool/testvol1.img")
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
|
@ -722,14 +713,14 @@ class NewVM(uiutils.UITestCase):
|
|||
_newvm = self._open_create_wizard()
|
||||
_newvm.find_fuzzy("Manual", "radio").click()
|
||||
self.forward(_newvm)
|
||||
_newvm.find("oslist-entry").text = "generic"
|
||||
_newvm.find("oslist-entry").set_text("generic")
|
||||
_newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(_newvm)
|
||||
self.forward(_newvm)
|
||||
self.forward(_newvm)
|
||||
|
||||
# '/' in name will trigger libvirt error
|
||||
_newvm.find_fuzzy("Name", "text").text = "test/bad"
|
||||
_newvm.find_fuzzy("Name", "text").set_text("test/bad")
|
||||
_newvm.find_fuzzy("Finish", "button").click()
|
||||
self._click_alert_button("Unable to complete install", "Close")
|
||||
return _newvm
|
||||
|
@ -744,9 +735,9 @@ class NewVM(uiutils.UITestCase):
|
|||
newvm = dofail()
|
||||
self.back(newvm)
|
||||
newvm.find_fuzzy("Select or create", "radio").click()
|
||||
newvm.find("storage-entry").text = "/dev/default-pool/somenewvol1"
|
||||
newvm.find("storage-entry").set_text("/dev/default-pool/somenewvol1")
|
||||
self.forward(newvm)
|
||||
newvm.find_fuzzy("Name", "text").text = "test-foo"
|
||||
newvm.find_fuzzy("Name", "text").set_text("test-foo")
|
||||
newvm.find_fuzzy("Finish", "button").click()
|
||||
|
||||
self.app.root.find_fuzzy("test-foo on", "frame")
|
||||
|
@ -766,20 +757,20 @@ class NewVM(uiutils.UITestCase):
|
|||
newvm.find_fuzzy("Forward", "button").click()
|
||||
nonexistpath = "/dev/foovmm-idontexist"
|
||||
existpath = "/dev/default-pool/testvol1.img"
|
||||
newvm.find("media-entry").text = nonexistpath
|
||||
newvm.find("media-entry").set_text(nonexistpath)
|
||||
uiutils.check(
|
||||
lambda: newvm.find("oslist-entry").text == "None detected")
|
||||
newvm.find_fuzzy("Automatically detect", "check").click()
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm, check=False)
|
||||
self._click_alert_button("Error setting installer", "OK")
|
||||
newvm.find("media-entry").text = existpath
|
||||
newvm.find("media-entry").set_text(existpath)
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
newvm.find_fuzzy("Customize", "check").click()
|
||||
newvm.find_fuzzy("Name", "text").text = vmname
|
||||
newvm.find_fuzzy("Name", "text").set_text(vmname)
|
||||
newvm.find_fuzzy("Finish", "button").click()
|
||||
|
||||
# Change a VM setting and verify it
|
||||
|
@ -791,8 +782,9 @@ class NewVM(uiutils.UITestCase):
|
|||
bootmenu = tab.find("Enable boot menu", "check box")
|
||||
uiutils.check(lambda: not bootmenu.checked)
|
||||
win.find("XML", "page tab").click()
|
||||
xmleditor.text = xmleditor.text.replace(
|
||||
newtext = xmleditor.text.replace(
|
||||
"<os>", "<os><bootmenu enable='yes'/>")
|
||||
xmleditor.set_text(newtext)
|
||||
finish.click()
|
||||
win.find("Details", "page tab").click()
|
||||
uiutils.check(lambda: bootmenu.checked)
|
||||
|
@ -804,7 +796,7 @@ class NewVM(uiutils.UITestCase):
|
|||
newbrname = "BRFAKE"
|
||||
newx = xmleditor.text.replace("network", "bridge")
|
||||
newx = newx.replace('bridge="default"', "bridge='%s'" % newbrname)
|
||||
xmleditor.text = newx
|
||||
xmleditor.set_text(newx)
|
||||
finish.click()
|
||||
|
||||
# Finish install.
|
||||
|
@ -851,14 +843,14 @@ class NewVM(uiutils.UITestCase):
|
|||
|
||||
newvm.find_fuzzy("Import", "radio").click()
|
||||
self.forward(newvm)
|
||||
importtext = newvm.find_fuzzy(None, "text", "existing storage")
|
||||
importtext = newvm.find("import-entry")
|
||||
|
||||
# Click forward, hitting missing OS error
|
||||
self.forward(newvm, check=False)
|
||||
self._click_alert_button("select an OS", "OK")
|
||||
|
||||
# Set OS
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
|
||||
# Click forward, hitting missing Import path error
|
||||
|
@ -866,12 +858,12 @@ class NewVM(uiutils.UITestCase):
|
|||
self._click_alert_button("import is required", "OK")
|
||||
|
||||
# Click forward, but Import path doesn't exist
|
||||
importtext.text = "/dev/default-pool/idontexist"
|
||||
importtext.set_text("/dev/default-pool/idontexist")
|
||||
self.forward(newvm, check=False)
|
||||
self._click_alert_button("import path must point", "OK")
|
||||
|
||||
# Click forward, but Import path is in use, and exit
|
||||
importtext.text = "/dev/default-pool/default-vol"
|
||||
importtext.set_text("/dev/default-pool/default-vol")
|
||||
self.forward(newvm, check=False)
|
||||
self._click_alert_button("in use", "No")
|
||||
|
||||
|
@ -905,10 +897,9 @@ class NewVM(uiutils.UITestCase):
|
|||
newvm = self._open_create_wizard()
|
||||
|
||||
newvm.find_fuzzy("Import", "radio").click()
|
||||
newvm.find_fuzzy(None,
|
||||
"text", "existing storage").text = "/dev/default-pool/testvol1.img"
|
||||
self.forward(newvm)
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("import-entry").set_text("/dev/default-pool/testvol1.img")
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
|
@ -926,17 +917,16 @@ class NewVM(uiutils.UITestCase):
|
|||
newvm = self._open_create_wizard()
|
||||
|
||||
newvm.find_fuzzy("Import", "radio").click()
|
||||
newvm.find_fuzzy(None,
|
||||
"text", "existing storage").text = __file__
|
||||
self.forward(newvm)
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("import-entry").set_text(__file__)
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
newvm.combo_check_default("net-source", "Bridge")
|
||||
warnlabel = newvm.find_fuzzy("suitable default network", "label")
|
||||
uiutils.check(lambda: warnlabel.onscreen)
|
||||
newvm.find("Device name:", "text").text = "foobr0"
|
||||
newvm.find("Device name:", "text").set_text("foobr0")
|
||||
|
||||
# Select customize wizard, we will use this VM to hit specific
|
||||
# code paths
|
||||
|
@ -977,10 +967,9 @@ class NewVM(uiutils.UITestCase):
|
|||
newvm = self._open_create_wizard()
|
||||
|
||||
newvm.find_fuzzy("Import", "radio").click()
|
||||
newvm.find_fuzzy(None,
|
||||
"text", "existing storage").text = __file__
|
||||
self.forward(newvm)
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("import-entry").set_text(__file__)
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
|
@ -999,10 +988,9 @@ class NewVM(uiutils.UITestCase):
|
|||
newvm = self._open_create_wizard()
|
||||
|
||||
newvm.find_fuzzy("Import", "radio").click()
|
||||
newvm.find_fuzzy(None,
|
||||
"text", "existing storage").text = __file__
|
||||
self.forward(newvm)
|
||||
newvm.find("oslist-entry").text = "generic"
|
||||
newvm.find("import-entry").set_text(__file__)
|
||||
newvm.find("oslist-entry").set_text("generic")
|
||||
newvm.find("oslist-popover").find_fuzzy("generic").click()
|
||||
self.forward(newvm)
|
||||
self.forward(newvm)
|
||||
|
|
|
@ -36,8 +36,8 @@ class CreateVol(uiutils.UITestCase):
|
|||
# Create a default qcow2 volume
|
||||
uiutils.check(lambda: name.text == "vol")
|
||||
newname = "a-newvol"
|
||||
name.text = newname
|
||||
win.find("Max Capacity:", "spin button").text = "10.5"
|
||||
name.set_text(newname)
|
||||
win.find("Max Capacity:", "spin button").set_text("10.5")
|
||||
finish.click()
|
||||
|
||||
# Delete it, clicking 'No' first
|
||||
|
@ -70,7 +70,7 @@ class CreateVol(uiutils.UITestCase):
|
|||
|
||||
# Create a qcow2 with backing file
|
||||
newname = "aaa-qcow2-backing.qcow2"
|
||||
name.text = newname
|
||||
name.set_text(newname)
|
||||
win.combo_select("Format:", "qcow2")
|
||||
win.find("Backing store").click_expander()
|
||||
win.find("Browse...").click()
|
||||
|
@ -95,19 +95,19 @@ class CreateVol(uiutils.UITestCase):
|
|||
# Create a raw volume with some size tweaking
|
||||
win = self._open_create_win(hostwin)
|
||||
# Using previous name so we collide
|
||||
name.text = newname
|
||||
name.set_text(newname)
|
||||
win.combo_select("Format:", "raw")
|
||||
cap = win.find("Max Capacity:", "spin button")
|
||||
alloc = win.find("Allocation:", "spin button")
|
||||
alloc.text = "50.0"
|
||||
alloc.set_text("50.0")
|
||||
alloc.click()
|
||||
self.pressKey("Enter")
|
||||
uiutils.check(lambda: cap.text == "50.0")
|
||||
cap.text = "1.0"
|
||||
cap.set_text("1.0")
|
||||
cap.click()
|
||||
self.pressKey("Enter")
|
||||
uiutils.check(lambda: alloc.text == "1.0")
|
||||
alloc.text = "0.5"
|
||||
alloc.set_text("0.5")
|
||||
alloc.click()
|
||||
self.pressKey("Enter")
|
||||
uiutils.check(lambda: cap.text == "1.0")
|
||||
|
@ -115,7 +115,7 @@ class CreateVol(uiutils.UITestCase):
|
|||
finish.click()
|
||||
self._click_alert_button("Error validating volume", "Close")
|
||||
newname = "a-newvol.raw"
|
||||
name.text = newname
|
||||
name.set_text(newname)
|
||||
finish.click()
|
||||
vollist.find(newname)
|
||||
|
||||
|
@ -123,7 +123,7 @@ class CreateVol(uiutils.UITestCase):
|
|||
hostwin.find("disk-pool", "table cell").click()
|
||||
win = self._open_create_win(hostwin)
|
||||
newname = "aaa-lvm"
|
||||
name.text = newname
|
||||
name.set_text(newname)
|
||||
win.find("Backing store").click_expander()
|
||||
win.find("Browse...").click()
|
||||
self._select_storagebrowser_volume("disk-pool", "diskvol7")
|
||||
|
@ -144,11 +144,12 @@ class CreateVol(uiutils.UITestCase):
|
|||
# Create a new obj with XML edited name, verify it worked
|
||||
tmpname = "objtmpname"
|
||||
newname = "aafroofroo"
|
||||
name.text = tmpname
|
||||
name.set_text(tmpname)
|
||||
win.find("XML", "page tab").click()
|
||||
xmleditor = win.find("XML editor")
|
||||
xmleditor.text = xmleditor.text.replace(
|
||||
">%s.qcow2<" % tmpname, ">%s<" % newname)
|
||||
newtext = xmleditor.text.replace(
|
||||
">%s.qcow2<" % tmpname, ">%s<" % newname)
|
||||
xmleditor.set_text(newtext)
|
||||
finish.click()
|
||||
uiutils.check(lambda: hostwin.active)
|
||||
vollist.find(newname)
|
||||
|
|
|
@ -66,7 +66,7 @@ class Details(uiutils.UITestCase):
|
|||
win.find("Overview", "table cell").click()
|
||||
|
||||
oldcell = self.app.root.find_fuzzy(origname, "table cell")
|
||||
win.find("Name:", "text").text = newname
|
||||
win.find("Name:", "text").set_text(newname)
|
||||
win.find("config-apply", "push button").click()
|
||||
|
||||
# Confirm lists were updated
|
||||
|
@ -117,7 +117,7 @@ class Details(uiutils.UITestCase):
|
|||
|
||||
# Make a change and then trigger unapplied change warning
|
||||
tab = self._select_hw(win, "Overview", "overview-tab")
|
||||
tab.find("Name:", "text").text = ""
|
||||
tab.find("Name:", "text").set_text("")
|
||||
uiutils.check(lambda: appl.sensitive)
|
||||
run = win.find("Run", "push button")
|
||||
run.click()
|
||||
|
@ -152,8 +152,8 @@ class Details(uiutils.UITestCase):
|
|||
|
||||
# Overview description
|
||||
tab = self._select_hw(win, "Overview", "overview-tab")
|
||||
tab.find("Description:", "text").text = "hey new description"
|
||||
tab.find("Title:", "text").text = "hey new title"
|
||||
tab.find("Description:", "text").set_text("hey new description")
|
||||
tab.find("Title:", "text").set_text("hey new title")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
||||
|
@ -162,7 +162,7 @@ class Details(uiutils.UITestCase):
|
|||
|
||||
# Memory
|
||||
tab = self._select_hw(win, "Memory", "memory-tab")
|
||||
tab.find("Memory allocation:", "spin button").text = "300"
|
||||
tab.find("Memory allocation:", "spin button").set_text("300")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
||||
|
@ -185,18 +185,18 @@ class Details(uiutils.UITestCase):
|
|||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
copyhost = tab.find("Copy host", "check box")
|
||||
uiutils.check(lambda: copyhost.selected)
|
||||
uiutils.check(lambda: copyhost.checked)
|
||||
copyhost.click()
|
||||
tab.find("cpu-model").click_combo_entry()
|
||||
tab.find("Hypervisor Default", "menu item").click()
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
tab.find("cpu-model").text = "host-passthrough"
|
||||
tab.find("cpu-model").find(None, "text").text = "host-passthrough"
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
||||
# vCPUs
|
||||
tab.find("vCPU allocation:", "spin button").text = "50"
|
||||
tab.find("vCPU allocation:", "spin button").set_text("50")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
||||
|
@ -238,7 +238,7 @@ class Details(uiutils.UITestCase):
|
|||
self.pressKey("Down")
|
||||
popover = win.find("oslist-popover")
|
||||
popover.find("include-eol").click()
|
||||
entry.text = "fedora12"
|
||||
entry.set_text("fedora12")
|
||||
popover.find_fuzzy("fedora12").bring_on_screen().click()
|
||||
uiutils.check(lambda: not popover.visible)
|
||||
uiutils.check(lambda: entry.text == "Fedora 12")
|
||||
|
@ -257,13 +257,14 @@ class Details(uiutils.UITestCase):
|
|||
dogtail.rawinput.click(x, y, button)
|
||||
|
||||
tab = self._select_hw(win, "Boot Options", "boot-tab")
|
||||
self._stop_vm(win)
|
||||
tab.find_fuzzy("Start virtual machine on host", "check box").click()
|
||||
tab.find("Enable boot menu", "check box").click()
|
||||
check_bootorder(tab.find("SCSI Disk 1", "table cell"))
|
||||
tab.find("SCSI Disk 1", "table cell").click()
|
||||
tab.find("boot-movedown", "push button").click()
|
||||
tab.find("Floppy 1", "table cell").click()
|
||||
tab.find("boot-moveup", "push button").click()
|
||||
check_bootorder(tab.find("NIC :33:44", "table cell"))
|
||||
check_bootorder(tab.find("PCI 0003:", "table cell"))
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
||||
|
@ -271,7 +272,7 @@ class Details(uiutils.UITestCase):
|
|||
tab.find_fuzzy("Direct kernel boot", "toggle button").click_expander()
|
||||
tab.find_fuzzy("Enable direct kernel", "check box").click()
|
||||
|
||||
tab.find("Kernel args:", "text").text = "console=ttyS0"
|
||||
tab.find("Kernel args:", "text").set_text("console=ttyS0")
|
||||
appl.click()
|
||||
self._click_alert_button("arguments without specifying", "OK")
|
||||
uiutils.check(lambda: win.active)
|
||||
|
@ -322,9 +323,9 @@ class Details(uiutils.UITestCase):
|
|||
tab.find("Shareable:", "check box").click()
|
||||
tab.find("Readonly:", "check box").click()
|
||||
tab.find("Advanced options", "toggle button").click_expander()
|
||||
tab.find("Cache mode:", "text").text = "unsafe"
|
||||
tab.find("Discard mode:", "text").text = "unmap"
|
||||
tab.find("Detect zeroes:", "text").text = "unmap"
|
||||
tab.find("Cache mode:", "text").set_text("unsafe")
|
||||
tab.find("Discard mode:", "text").set_text("unmap")
|
||||
tab.find("Detect zeroes:", "text").set_text("unmap")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
||||
|
@ -337,7 +338,7 @@ class Details(uiutils.UITestCase):
|
|||
self.pressKey("Home")
|
||||
tab.find_fuzzy("Macvtap device...",
|
||||
"menu item").bring_on_screen().click()
|
||||
tab.find("Device name:", "text").text = "fakedev12"
|
||||
tab.find("Device name:", "text").set_text("fakedev12")
|
||||
tab.combo_select("Device model:", "rtl8139")
|
||||
tab.find("Link state:", "check box").click()
|
||||
appl.click()
|
||||
|
@ -347,11 +348,11 @@ class Details(uiutils.UITestCase):
|
|||
src.click()
|
||||
tab.find_fuzzy("Bridge device...",
|
||||
"menu item").bring_on_screen().click()
|
||||
tab.find("Device name:", "text").text = ""
|
||||
tab.find("Device name:", "text").set_text("")
|
||||
appl.click()
|
||||
# Check validation error
|
||||
self._click_alert_button("Error changing VM configuration", "Close")
|
||||
tab.find("Device name:", "text").text = "zbr0"
|
||||
tab.find("Device name:", "text").set_text("zbr0")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
||||
|
@ -381,7 +382,7 @@ class Details(uiutils.UITestCase):
|
|||
tab.combo_select("Type:", "VNC")
|
||||
tab.combo_select("Listen type:", "Address")
|
||||
tab.find("graphics-port-auto", "check").click()
|
||||
tab.find("graphics-port", "spin button").text = "6001"
|
||||
tab.find("graphics-port", "spin button").set_text("6001")
|
||||
tab.find("Password:", "check").click()
|
||||
passwd = tab.find_fuzzy("graphics-password", "text")
|
||||
newpass = "foobar"
|
||||
|
@ -391,7 +392,7 @@ class Details(uiutils.UITestCase):
|
|||
|
||||
# Sound device
|
||||
tab = self._select_hw(win, "Sound sb16", "sound-tab")
|
||||
tab.find("Model:", "text").text = "ac97"
|
||||
tab.find("Model:", "text").set_text("ac97")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
# Test non-disk removal
|
||||
|
@ -415,7 +416,7 @@ class Details(uiutils.UITestCase):
|
|||
|
||||
# Video device
|
||||
tab = self._select_hw(win, "Video VMVGA", "video-tab")
|
||||
tab.find("Model:", "text").text = "virtio"
|
||||
tab.find("Model:", "text").set_text("virtio")
|
||||
tab.find("3D acceleration:", "check box").click()
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
@ -423,7 +424,7 @@ class Details(uiutils.UITestCase):
|
|||
|
||||
# Watchdog
|
||||
tab = self._select_hw(win, "Watchdog", "watchdog-tab")
|
||||
tab.find("Model:", "text").text = "diag288"
|
||||
tab.find("Model:", "text").set_text("diag288")
|
||||
tab.find("Action:", "text").click()
|
||||
self.pressKey("Down")
|
||||
appl.click()
|
||||
|
@ -458,8 +459,8 @@ class Details(uiutils.UITestCase):
|
|||
tab = self._select_hw(win, "Filesystem /target/", "filesystem-tab")
|
||||
tab.combo_select("Driver:", "Path")
|
||||
tab.combo_select("Write Policy:", "Immediate")
|
||||
tab.find("Source path:", "text").text = "/frib1"
|
||||
tab.find("Target path:", "text").text = "newtarget"
|
||||
tab.find("Source path:", "text").set_text("/frib1")
|
||||
tab.find("Target path:", "text").set_text("newtarget")
|
||||
tab.find_fuzzy("Export filesystem", "check box").click()
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
@ -482,7 +483,7 @@ class Details(uiutils.UITestCase):
|
|||
addr = tab.find("vsock-cid")
|
||||
auto = tab.find("vsock-auto")
|
||||
uiutils.check(lambda: addr.text == "5")
|
||||
addr.text = "7"
|
||||
addr.set_text("7")
|
||||
appl.click()
|
||||
uiutils.check(lambda: addr.text == "7")
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
@ -524,9 +525,7 @@ class Details(uiutils.UITestCase):
|
|||
|
||||
# Attempt to apply changes when skipping away, but they fail
|
||||
tab.find("Advanced options", "toggle button").click_expander()
|
||||
cacheui = tab.find("Cache mode:", "text")
|
||||
origcache = cacheui.text
|
||||
cacheui.text = "badcachemode"
|
||||
tab.find("Cache mode:", "text").set_text("badcachemode")
|
||||
hwlist.find("CPUs", "table cell").click()
|
||||
self._click_alert_button("There are unapplied changes", "Yes")
|
||||
self._click_alert_button("badcachemode", "Close")
|
||||
|
@ -577,7 +576,7 @@ class Details(uiutils.UITestCase):
|
|||
|
||||
# Unapplied changes should warn when switching to XML tab
|
||||
tab = self._select_hw(win, "Overview", "overview-tab")
|
||||
tab.find("Description:", "text").text = "hey new description"
|
||||
tab.find("Description:", "text").set_text("hey new description")
|
||||
win.find("XML", "page tab").click()
|
||||
# Select 'No', meaning don't abandon changes
|
||||
self._click_alert_button("changes will be lost", "No")
|
||||
|
@ -589,7 +588,7 @@ class Details(uiutils.UITestCase):
|
|||
uiutils.check(lambda: not tab.showing)
|
||||
|
||||
# Verify addhardware right click works
|
||||
cell = win.find("Overview", "table cell").click(button=3)
|
||||
win.find("Overview", "table cell").click(button=3)
|
||||
self.app.root.find("Add Hardware", "menu item").click()
|
||||
self.app.root.find("Add New Virtual Hardware", "frame")
|
||||
|
||||
|
@ -605,7 +604,7 @@ class Details(uiutils.UITestCase):
|
|||
# Edit vcpu count and verify it's reflected in CPU page
|
||||
tab = self._select_hw(win, "CPUs", "cpu-tab")
|
||||
win.find("XML", "page tab").click()
|
||||
xmleditor.text = xmleditor.text.replace(">5</vcpu", ">8</vcpu")
|
||||
xmleditor.set_text(xmleditor.text.replace(">5</vcpu", ">8</vcpu"))
|
||||
finish.click()
|
||||
win.find("Details", "page tab").click()
|
||||
vcpualloc = tab.find("vCPU allocation:", "spin button")
|
||||
|
@ -616,7 +615,7 @@ class Details(uiutils.UITestCase):
|
|||
win.find("XML", "page tab").click()
|
||||
origpath = "/dev/default-pool/test-clone-simple.img"
|
||||
newpath = "/path/FOOBAR"
|
||||
xmleditor.text = xmleditor.text.replace(origpath, newpath)
|
||||
xmleditor.set_text(xmleditor.text.replace(origpath, newpath))
|
||||
finish.click()
|
||||
win.find("Details", "page tab").click()
|
||||
disksrc = win.find("disk-source-path")
|
||||
|
|
|
@ -44,7 +44,7 @@ class Host(uiutils.UITestCase):
|
|||
xmleditor = win.find("XML editor")
|
||||
origdev = "virbr0"
|
||||
newdev = "virbr77"
|
||||
xmleditor.text = xmleditor.text.replace(origdev, newdev)
|
||||
xmleditor.set_text(xmleditor.text.replace(origdev, newdev))
|
||||
finish.click()
|
||||
win.find("Details", "page tab").click()
|
||||
netdev = win.find("net-device")
|
||||
|
@ -52,7 +52,7 @@ class Host(uiutils.UITestCase):
|
|||
|
||||
# Rename it
|
||||
win.find("default", "table cell").click()
|
||||
win.find("net-name").text = "newsort-default"
|
||||
win.find("net-name").set_text("newsort-default")
|
||||
finish.click()
|
||||
|
||||
# Change autostart, trigger it by clicking away
|
||||
|
@ -96,7 +96,7 @@ class Host(uiutils.UITestCase):
|
|||
xmleditor = win.find("XML editor")
|
||||
origpath = "/dev/default-pool"
|
||||
newpath = "/dev/foo/bar/baz"
|
||||
xmleditor.text = xmleditor.text.replace(origpath, newpath)
|
||||
xmleditor.set_text(xmleditor.text.replace(origpath, newpath))
|
||||
finish.click()
|
||||
win.find("Details", "page tab").click()
|
||||
poolloc = win.find("pool-location")
|
||||
|
@ -104,7 +104,7 @@ class Host(uiutils.UITestCase):
|
|||
|
||||
# Rename it
|
||||
win.find("default", "table cell").click()
|
||||
win.find("pool-name").text = "newsort-default"
|
||||
win.find("pool-name").set_text("newsort-default")
|
||||
finish.click()
|
||||
|
||||
# Change autostart. Trigger it by clicking on new cell
|
||||
|
@ -164,7 +164,7 @@ class Host(uiutils.UITestCase):
|
|||
win.find("Autoconnect:", "check box").click()
|
||||
|
||||
# Change the name, verify that title bar changed
|
||||
win.find("Name:", "text").text = "FOOBAR"
|
||||
win.find("Name:", "text").set_text("FOOBAR")
|
||||
self.app.root.find("FOOBAR Connection Details", "frame")
|
||||
|
||||
# Open the manager window
|
||||
|
|
|
@ -177,7 +177,7 @@ class Console(uiutils.UITestCase):
|
|||
tab = addhw.find("storage-tab", None)
|
||||
uiutils.check(lambda: tab.showing)
|
||||
tab.find("Select or create", "radio button").click()
|
||||
tab.find("storage-entry").text = fname
|
||||
tab.find("storage-entry").set_text(fname)
|
||||
tab.combo_select("Bus type:", "SCSI")
|
||||
addhw.find("Finish", "push button").click()
|
||||
|
||||
|
@ -205,7 +205,7 @@ class Console(uiutils.UITestCase):
|
|||
entry = win.find("media-entry")
|
||||
appl = win.find("config-apply")
|
||||
uiutils.check(lambda: tab.showing)
|
||||
entry.text = fname
|
||||
entry.set_text(fname)
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
uiutils.check(lambda: entry.text == fname)
|
||||
|
|
|
@ -57,7 +57,7 @@ class Manager(uiutils.UITestCase):
|
|||
self.app.root.find("Preferences", "menu item").click()
|
||||
win = self.app.root.find_fuzzy("Preferences", "frame")
|
||||
win.find("Polling", "page tab").click()
|
||||
win.find("cpu-poll").text = "1"
|
||||
win.find("cpu-poll").set_text("1")
|
||||
win.find("Close", "push button").click()
|
||||
|
||||
self._testVMLifecycle()
|
||||
|
|
|
@ -32,10 +32,9 @@ class MediaChange(uiutils.UITestCase):
|
|||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
uiutils.check(lambda: not entry.text)
|
||||
appl.click()
|
||||
|
||||
# Enter /dev/fdb, after apply it should change to pretty label
|
||||
entry.text = "/dev/fdb"
|
||||
entry.set_text("/dev/fdb")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
uiutils.check(lambda:
|
||||
|
@ -43,7 +42,7 @@ class MediaChange(uiutils.UITestCase):
|
|||
|
||||
# Specify manual path
|
||||
path = "/tmp/aaaaaaaaaaaaaaaaaaaaaaa.img"
|
||||
entry.text = path
|
||||
entry.set_text(path)
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
uiutils.check(lambda: entry.text == path)
|
||||
|
@ -73,7 +72,7 @@ class MediaChange(uiutils.UITestCase):
|
|||
self._click_alert_button("already in use by", "Yes")
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
uiutils.check(lambda: "backing" in entry.text)
|
||||
entry.text = ""
|
||||
entry.set_text("")
|
||||
appl.click()
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
uiutils.check(lambda: not entry.text)
|
||||
|
@ -91,7 +90,7 @@ class MediaChange(uiutils.UITestCase):
|
|||
# CDROM + physical
|
||||
hw.find("IDE CDROM 1", "table cell").click()
|
||||
uiutils.check(lambda: not entry.text)
|
||||
entry.text = "/dev/sr0"
|
||||
entry.set_text("/dev/sr0")
|
||||
appl.click()
|
||||
self._click_alert_button("changes will take effect", "OK")
|
||||
uiutils.check(lambda: not appl.sensitive)
|
||||
|
|
|
@ -20,7 +20,7 @@ class VMMMigrate(uiutils.UITestCase):
|
|||
manager.find("Add Connection...", "menu item").click()
|
||||
win = manager.find_fuzzy("Add Connection", "dialog")
|
||||
win.combo_select("Hypervisor", "Custom URI")
|
||||
win.find("uri-entry", "text").text = uri
|
||||
win.find("uri-entry", "text").set_text(uri)
|
||||
win.find("Connect", "push button").click()
|
||||
uiutils.check(lambda: win.showing is False)
|
||||
|
||||
|
@ -92,7 +92,7 @@ class VMMMigrate(uiutils.UITestCase):
|
|||
|
||||
# Run it and check some values
|
||||
mig = self._open_migrate("test-many-devices")
|
||||
mig.find("address-text").text = "TESTSUITE-FAKE"
|
||||
mig.find("address-text").set_text("TESTSUITE-FAKE")
|
||||
|
||||
mig.find("Migrate", "push button").click()
|
||||
progwin = self.app.root.find("Migrating VM", "frame")
|
||||
|
|
|
@ -40,7 +40,7 @@ class VMMPrefs(uiutils.UITestCase):
|
|||
tab.find("Poll Network", "check box").click()
|
||||
period = tab.find_fuzzy("cpu-poll", "spin button")
|
||||
period.click()
|
||||
period.text = "5"
|
||||
period.set_text("5")
|
||||
|
||||
win.find("New VM", "page tab").click()
|
||||
tab = newvmtab
|
||||
|
@ -122,8 +122,8 @@ class VMMPrefs(uiutils.UITestCase):
|
|||
|
||||
managerwin.keyCombo("<alt>F4")
|
||||
detailswin.click()
|
||||
xmleditor.text = xmleditor.text.replace(">",
|
||||
"><title>FOOTITLE</title>", 1)
|
||||
newtext = xmleditor.text.replace(">", "><title>FOOTITLE</title>", 1)
|
||||
xmleditor.set_text(newtext)
|
||||
finish.click()
|
||||
detailswin.find("Details", "page tab").click()
|
||||
uiutils.check(lambda:
|
||||
|
|
|
@ -64,13 +64,13 @@ class Snapshots(uiutils.UITestCase):
|
|||
# Edit snapshot
|
||||
descui = win.find("snapshot-description")
|
||||
desc = "TESTSNAP"
|
||||
descui.text = desc
|
||||
descui.set_text(desc)
|
||||
win.find("snapshot-apply", "push button").click()
|
||||
win.find("snapshot-refresh", "push button").click()
|
||||
uiutils.check(lambda: descui.text == desc)
|
||||
# Apply by clicking away
|
||||
desc += " ROUND2"
|
||||
descui.text = desc
|
||||
descui.set_text(desc)
|
||||
win.find("internal-root", "table cell").click()
|
||||
self._click_alert_button("There are unapplied changes", "Yes")
|
||||
|
||||
|
@ -78,8 +78,8 @@ class Snapshots(uiutils.UITestCase):
|
|||
win.find("snapshot-add", "push button").click()
|
||||
newwin = self.app.root.find("Create snapshot", "frame")
|
||||
snapname = "testnewsnap"
|
||||
newwin.find("Name:", "text").text = snapname
|
||||
newwin.find("Description:", "text").text = "testdesc"
|
||||
newwin.find("Name:", "text").set_text(snapname)
|
||||
newwin.find("Description:", "text").set_text("testdesc")
|
||||
newwin.find("Finish", "push button").click()
|
||||
uiutils.check(lambda: not newwin.showing)
|
||||
newc = win.find(snapname, "table cell")
|
||||
|
@ -97,7 +97,7 @@ class Snapshots(uiutils.UITestCase):
|
|||
win.find("snapshot-add", "push button").click()
|
||||
newwin = self.app.root.find("Create snapshot", "frame")
|
||||
snapname = "testnewsnap"
|
||||
newwin.find("Name:", "text").text = snapname
|
||||
newwin.find("Name:", "text").set_text(snapname)
|
||||
newwin.find("Finish", "push button").click()
|
||||
uiutils.check(lambda: not newwin.showing)
|
||||
newc = win.find(snapname, "table cell")
|
||||
|
@ -128,7 +128,7 @@ class Snapshots(uiutils.UITestCase):
|
|||
self._click_alert_button("not become part of the snapshot", "OK")
|
||||
newwin = self.app.root.find("Create snapshot", "frame")
|
||||
snapname1 = "testnewsnap1"
|
||||
newwin.find("Name:", "text").text = snapname1
|
||||
newwin.find("Name:", "text").set_text(snapname1)
|
||||
newwin.find("Finish", "push button").click()
|
||||
uiutils.check(lambda: not newwin.showing)
|
||||
newc = win.find(snapname1, "table cell")
|
||||
|
@ -140,16 +140,16 @@ class Snapshots(uiutils.UITestCase):
|
|||
win.find("snapshot-add", "push button").click()
|
||||
newwin = self.app.root.find("Create snapshot", "frame")
|
||||
# Force validation error
|
||||
newwin.find("Name:", "text").text = "bad name"
|
||||
newwin.find("Name:", "text").set_text("bad name")
|
||||
newwin.find("Finish", "push button").click()
|
||||
self._click_alert_button("validating snapshot", "OK")
|
||||
# Force name collision
|
||||
newwin.find("Name:", "text").text = snapname1
|
||||
newwin.find("Name:", "text").set_text(snapname1)
|
||||
newwin.find("Finish", "push button").click()
|
||||
self._click_alert_button(snapname1, "Close")
|
||||
# Make it succeed
|
||||
snapname2 = "testnewsnap2"
|
||||
newwin.find("Name:", "text").text = snapname2
|
||||
newwin.find("Name:", "text").set_text(snapname2)
|
||||
newwin.find("Finish", "push button").click()
|
||||
uiutils.check(lambda: not newwin.showing)
|
||||
newc = win.find(snapname2, "table cell")
|
||||
|
|
|
@ -161,7 +161,7 @@ class UITestCase(unittest.TestCase):
|
|||
# Click the tab, make a bogus XML edit
|
||||
win.find("XML", "page tab").click()
|
||||
xmleditor = win.find("XML editor")
|
||||
xmleditor.text = xmleditor.text.replace("<", "<FOO", 1)
|
||||
xmleditor.set_text(xmleditor.text.replace("<", "<FOO", 1))
|
||||
|
||||
# Trying to click away should warn that there's unapplied changes
|
||||
win.find("Details", "page tab").click()
|
||||
|
@ -302,10 +302,35 @@ class VMMDogtailNode(dogtail.tree.Node):
|
|||
self.position[1] >= 0 and
|
||||
self.position[1] + self.size[1] < screen.get_height())
|
||||
|
||||
def check_onscreen(self):
|
||||
"""
|
||||
Check in a loop that the widget is onscreen
|
||||
"""
|
||||
check(lambda: self.onscreen)
|
||||
|
||||
def check_sensitive(self):
|
||||
"""
|
||||
Check whether interactive widgets are sensitive or not
|
||||
"""
|
||||
valid_types = [
|
||||
"push button",
|
||||
"toggle button",
|
||||
"check button",
|
||||
"combo box",
|
||||
"menu item",
|
||||
"text",
|
||||
"menu",
|
||||
]
|
||||
if self.roleName not in valid_types:
|
||||
return True
|
||||
check(lambda: self.sensitive)
|
||||
|
||||
def click_secondary_icon(self):
|
||||
"""
|
||||
Helper for clicking the secondary icon of a text entry
|
||||
"""
|
||||
self.check_onscreen()
|
||||
self.check_sensitive()
|
||||
button = 1
|
||||
clickX = self.position[0] + self.size[0] - 10
|
||||
clickY = self.position[1] + (self.size[1] / 2)
|
||||
|
@ -318,6 +343,8 @@ class VMMDogtailNode(dogtail.tree.Node):
|
|||
Using a small, hardcoded offset may not work on some themes (e.g. when
|
||||
running virt-manager on KDE)
|
||||
"""
|
||||
self.check_onscreen()
|
||||
self.check_sensitive()
|
||||
button = 1
|
||||
clickX = self.position[0] + self.size[0] - self.size[1] / 4
|
||||
clickY = self.position[1] + self.size[1] / 2
|
||||
|
@ -328,6 +355,8 @@ class VMMDogtailNode(dogtail.tree.Node):
|
|||
Helper for clicking expander, hitting the text part to actually
|
||||
open it. Basically clicks top left corner with some indent
|
||||
"""
|
||||
self.check_onscreen()
|
||||
self.check_sensitive()
|
||||
button = 1
|
||||
clickX = self.position[0] + 10
|
||||
clickY = self.position[1] + 5
|
||||
|
@ -351,9 +380,16 @@ class VMMDogtailNode(dogtail.tree.Node):
|
|||
screen, helps reduce some test flakiness
|
||||
"""
|
||||
# pylint: disable=arguments-differ,signature-differs
|
||||
check(lambda: self.onscreen)
|
||||
self.check_onscreen()
|
||||
self.check_sensitive()
|
||||
dogtail.tree.Node.click(self, *args, **kwargs)
|
||||
|
||||
def set_text(self, text):
|
||||
self.check_onscreen()
|
||||
self.check_sensitive()
|
||||
assert hasattr(self, "text")
|
||||
self.text = text
|
||||
|
||||
def bring_on_screen(self, key_name="Down", max_tries=100):
|
||||
"""
|
||||
Attempts to bring the item to screen by repeatedly clicking the given
|
||||
|
|
|
@ -1078,6 +1078,11 @@ User shouldn't see this.</property>
|
|||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="invisible_char">●</property>
|
||||
<child internal-child="accessible">
|
||||
<object class="AtkObject" id="install-import-entry-atkobject">
|
||||
<property name="AtkObject::accessible-name">import-entry</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">True</property>
|
||||
|
|
Loading…
Reference in New Issue