summaryrefslogtreecommitdiffstats
path: root/ipatests/test_webui/ui_driver.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipatests/test_webui/ui_driver.py')
-rw-r--r--ipatests/test_webui/ui_driver.py41
1 files changed, 16 insertions, 25 deletions
diff --git a/ipatests/test_webui/ui_driver.py b/ipatests/test_webui/ui_driver.py
index 508418b6..66141d80 100644
--- a/ipatests/test_webui/ui_driver.py
+++ b/ipatests/test_webui/ui_driver.py
@@ -75,6 +75,7 @@ DEFAULT_BROWSER = 'firefox'
DEFAULT_PORT = 4444
DEFAULT_TYPE = 'local'
+
class UI_driver(object):
"""
Base class for all UI integration tests
@@ -109,14 +110,14 @@ class UI_driver(object):
except yaml.YAMLError, e:
raise nose.SkipTest("Invalid Web UI config.\n%s" % e)
except IOError, e:
- raise nose.SkipTest("Can't load Web UI test config: %s" %e)
+ raise nose.SkipTest("Can't load Web UI test config: %s" % e)
else:
self.config = {}
c = self.config
# override with environmental variables
- for k,v in ENV_MAP.iteritems():
+ for k, v in ENV_MAP.iteritems():
val = os.environ.get(k)
if val is not None:
c[v] = val
@@ -129,7 +130,6 @@ class UI_driver(object):
if 'type' not in c:
c['type'] = DEFAULT_TYPE
-
def setUp(self):
"""
Test setup
@@ -288,7 +288,6 @@ class UI_driver(object):
"""
return "contains(concat(' ',normalize-space(@%s), ' '),' %s ')" % (attr, val)
-
def init_app(self):
"""
Load and login
@@ -346,7 +345,7 @@ class UI_driver(object):
def navigate_to_entity(self, entity, facet=None):
self.driver.get(self.get_url(entity, facet))
- self.wait_for_request(n=3,d=0.4)
+ self.wait_for_request(n=3, d=0.4)
def navigate_by_menu(self, item, complete=True):
"""
@@ -432,11 +431,13 @@ class UI_driver(object):
# get facet title
el = self.find(".facet-header h3 *:first-child", By.CSS_SELECTOR, facet)
- if el: info["title"] = el.text
+ if el:
+ info["title"] = el.text
# get facet pkey
el = self.find(".facet-header h3 span.facet-pkey", By.CSS_SELECTOR, facet)
- if el: info["pkey"] = el.text
+ if el:
+ info["pkey"] = el.text
return info
@@ -466,7 +467,7 @@ class UI_driver(object):
"""
Get last opened error dialog or None.
"""
- s = "div[role=dialog] div[data-name='%s']" % dialog_name
+ s = "div[role=dialog] div[data-name='%s']" % dialog_name
dialogs = self.find(s, By.CSS_SELECTOR, all=True)
dialog = None
if dialogs:
@@ -656,7 +657,7 @@ class UI_driver(object):
for i in inputs:
val = i.get_attribute('value')
n = i.get_attribute('name')
- if val == value:
+ if val == value:
s = "input[name='%s'] ~ a[name=remove]" % n
link = self.find(s, By.CSS_SELECTOR, w, strict=True)
link.click()
@@ -677,14 +678,13 @@ class UI_driver(object):
else:
self.del_multivalued(name, value, parent)
-
def check_option(self, name, value=None, parent=None):
"""
Find checkbox or radio with name which matches ^NAME\d$
"""
if not parent:
parent = self.get_form()
- s = "//input[@type='checkbox' or 'radio'][contains(@name, '%s')]" % name
+ s = "//input[@type='checkbox' or 'radio'][contains(@name, '%s')]" % name
if value is not None:
s += "[@value='%s']" % value
opts = self.find(s, "xpath", parent, all=True)
@@ -826,7 +826,7 @@ class UI_driver(object):
s = "table"
if name:
s += "[name='%s']" % name
- s +='.search-table'
+ s += '.search-table'
return s
def select_record(self, pkey, parent=None, table_name=None):
@@ -901,7 +901,6 @@ class UI_driver(object):
self.wait_for_request(n=2)
self.wait()
-
def delete(self, entity, data_list, facet='search', navigate=True):
"""
Delete entity records:
@@ -999,7 +998,6 @@ class UI_driver(object):
assert valid, "Values don't match. Expected: '%s', Got: '%s'" % (expected, actual)
-
def find_record(self, entity, data, facet='search', dummy='XXXXXXX'):
"""
Test search functionality of search facet.
@@ -1011,7 +1009,6 @@ class UI_driver(object):
self.assert_facet(entity, facet)
-
facet = self.get_facet()
search_field_s = '.search-filter input[name=filter]'
key = data.get('pkey')
@@ -1081,7 +1078,6 @@ class UI_driver(object):
self.dialog_button_click('ok')
self.wait_for_request()
-
# check for error
self.assert_no_error_dialog()
self.wait_for_request()
@@ -1119,10 +1115,10 @@ class UI_driver(object):
self.assert_facet_button_enabled(facet_btn, enabled=False)
def basic_crud(self, entity, data,
- parent_entity = None,
- details_facet = 'details',
- search_facet = 'search',
- default_facet = 'details',
+ parent_entity=None,
+ details_facet='details',
+ search_facet='search',
+ default_facet='details',
add_facet_btn='add',
add_dialog_btn='add',
add_dialog_name='add',
@@ -1190,7 +1186,6 @@ class UI_driver(object):
if delete:
self.delete_record(pkey, data.get('del'))
-
def add_table_record(self, name, data, parent=None):
"""
Add record to dnsrecord table, association table and similar
@@ -1364,7 +1359,6 @@ class UI_driver(object):
# add multiple at once and test table delete button
self.add_table_associations(table, keys, delete=True)
-
def skip(self, reason):
"""
Skip tests
@@ -1401,7 +1395,6 @@ class UI_driver(object):
dialogs = self.get_dialogs(name)
assert len(dialogs) == 1, 'No or more than one dialog opened'
-
def assert_no_error_dialog(self):
"""
Assert that no error dialog is opened
@@ -1447,7 +1440,6 @@ class UI_driver(object):
s = "table[name='%s'] " % table_name
self.assert_button_enabled(name, s, enabled)
-
def assert_facet(self, entity, facet=None):
"""
Assert that current facet is correct
@@ -1485,7 +1477,6 @@ class UI_driver(object):
else:
assert visible, "Element not visible: %s" % selector
-
def assert_record(self, pkey, parent=None, table_name=None, negative=False):
"""
Assert that record is in current search table