diff options
author | Cole Robinson <crobinso@redhat.com> | 2018-01-19 12:07:58 -0500 |
---|---|---|
committer | Cole Robinson <crobinso@redhat.com> | 2018-01-21 10:02:08 -0500 |
commit | c620e7405c22eab716409d592b4e1a004d067c35 (patch) | |
tree | aa2b6fadb855556ba4f46c6fdec0665d9e748fb0 | |
parent | 72f006ae8b748372c2c423dcaafef122f2a04ea2 (diff) | |
download | virt-manager-c620e7405c22eab716409d592b4e1a004d067c35.tar.gz |
uitests: addhardware: add network tests
-rw-r--r-- | tests/uitests/addhardware.py | 81 | ||||
-rw-r--r-- | ui/addhardware.ui | 5 | ||||
-rw-r--r-- | virtManager/addhardware.py | 4 |
3 files changed, 86 insertions, 4 deletions
diff --git a/tests/uitests/addhardware.py b/tests/uitests/addhardware.py index ab941df7..d48687fb 100644 --- a/tests/uitests/addhardware.py +++ b/tests/uitests/addhardware.py @@ -35,6 +35,87 @@ class Details(uiutils.UITestCase): # Test cases # ############## + def testAddNetworks(self): + """ + Test various network configs + """ + details = self._open_details_window() + addhw = self._open_addhw_window(details) + finish = addhw.find("Finish", "push button") + + # Basic network + opts + tab = self._select_hw(addhw, "Network", "network-tab") + src = tab.find(None, "combo box", "Network source:") + src.click() + tab.find_fuzzy("Virtual network 'default' : NAT", "menu item").click() + tab.find("MAC Address Field", "text").text = "00:11:00:11:00:11" + tab.find("Device model:", "combo box").click_combo_entry() + tab.find("virtio", "menu item").click() + finish.click() + uiutils.check_in_loop(lambda: details.active) + + # macvtap + self._open_addhw_window(details) + tab = self._select_hw(addhw, "Network", "network-tab") + src.click() + tab.find_fuzzy("macvtap", "menu item").click() + mode = tab.find_fuzzy("Source mode:", "combo box") + mode.click_combo_entry() + self.assertTrue(mode.find("Bridge", "menu item").selected) + self.pressKey("Escape") + finish.click() + uiutils.check_in_loop(lambda: details.active) + + # Manual bridge + self._open_addhw_window(details) + tab = self._select_hw(addhw, "Network", "network-tab") + tab.find("mac-address-enable", "check box").click() + src.click() + self.pressKey("End") + tab.find_fuzzy("Specify shared device", "menu item").click() + finish.click() + + # Check validation error + alert = self.app.root.find("vmm dialog", "alert") + alert.find_fuzzy("Error adding device", "label") + alert.find("Close", "push button").click() + + # Enter bridge name + tab.find("Bridge name:", "text").text = "zbr0" + finish.click() + uiutils.check_in_loop(lambda: details.active) + + # Network with portops + self._open_addhw_window(details) + tab = self._select_hw(addhw, "Network", "network-tab") + tab.find("mac-address-enable", "check box").click() + src.click() + self.pressKey("Home") + tab.find_fuzzy("plainbridge-portgroups", "menu item").click() + c = tab.find_fuzzy("Portgroup:", "combo box") + c.click_combo_entry() + self.assertTrue(c.find("engineering", "menu item").selected) + self.pressKey("Escape") + finish.click() + uiutils.check_in_loop(lambda: details.active) + + # Network with vport stuff + self._open_addhw_window(details) + tab = self._select_hw(addhw, "Network", "network-tab") + tab.find("mac-address-enable", "check box").click() + src.click() + tab.find_fuzzy("OpenVSwitch", "menu item").click() + t = tab.find("Virtual port", "toggle button") + t.click() + t.find("Type:", "text").text = "foo1" + t.find("Managerid:", "text").text = "foo2" + t.find("Typeid:", "text").text = "foo3" + t.find("Typeid version:", "text").text = "foo4" + t.find("Instance id:", "text").text = "foo5" + finish.click() + uiutils.check_in_loop(lambda: details.active) + + def testAddGraphics(self): """ Graphics device testing diff --git a/ui/addhardware.ui b/ui/addhardware.ui index a44cb1f3..5678e035 100644 --- a/ui/addhardware.ui +++ b/ui/addhardware.ui @@ -416,6 +416,11 @@ <property name="use_underline">True</property> <property name="draw_indicator">True</property> <signal name="clicked" handler="on_mac_address_clicked" swapped="no"/> + <child internal-child="accessible"> + <object class="AtkObject" id="mac-address-atkobject"> + <property name="AtkObject::accessible-name">mac-address-enable</property> + </object> + </child> </object> <packing> <property name="expand">False</property> diff --git a/virtManager/addhardware.py b/virtManager/addhardware.py index b1c482b1..7d96c848 100644 --- a/virtManager/addhardware.py +++ b/virtManager/addhardware.py @@ -1537,10 +1537,6 @@ class vmmAddHardware(vmmGObjectUI): return self.err.val_err(_("Network selection error."), _("A network source must be selected.")) - if not mac: - return self.err.val_err(_("Invalid MAC address"), - _("A MAC address must be entered.")) - ret = self._netlist.validate_network(mac, model) if ret is False: return False |