diff options
author | Petr Vobornik <pvoborni@redhat.com> | 2013-08-16 18:18:53 +0200 |
---|---|---|
committer | Petr Vobornik <pvoborni@redhat.com> | 2013-08-22 15:23:56 +0200 |
commit | 278c87cc624f3f448d2686eca27e750e7276acad (patch) | |
tree | 69f275a583a9b0b711a75f14979c1e9e9fc3bc3a /ipatests/test_webui/ui_driver.py | |
parent | 0584caf56a33232b15c53ea5d6371bb43c3903aa (diff) | |
download | freeipa-278c87cc624f3f448d2686eca27e750e7276acad.tar.gz freeipa-278c87cc624f3f448d2686eca27e750e7276acad.tar.xz freeipa-278c87cc624f3f448d2686eca27e750e7276acad.zip |
Web UI integration tests: ID range types
https://fedorahosted.org/freeipa/ticket/3834
Diffstat (limited to 'ipatests/test_webui/ui_driver.py')
-rw-r--r-- | ipatests/test_webui/ui_driver.py | 36 |
1 files changed, 34 insertions, 2 deletions
diff --git a/ipatests/test_webui/ui_driver.py b/ipatests/test_webui/ui_driver.py index 9f448840c..46d7d6794 100644 --- a/ipatests/test_webui/ui_driver.py +++ b/ipatests/test_webui/ui_driver.py @@ -795,7 +795,7 @@ class UI_driver(object): undos = self.find(s, By.CSS_SELECTOR, parent, strict=True, many=True) return undos - def get_rows(self, parent=None): + def get_rows(self, parent=None, name=None): """ Return all rows of search table. """ @@ -803,10 +803,23 @@ class UI_driver(object): parent = self.get_form() # select table rows - s = 'table.search-table tbody tr' + s = self.get_table_selector(name) + s += ' tbody tr' rows = self.find(s, By.CSS_SELECTOR, parent, many=True) return rows + def get_row(self, pkey, parent=None, name=None): + """ + Get row element of search table with given pkey. None if not found. + """ + rows = self.get_rows(parent, name) + s = "input[value='%s']" % pkey + for row in rows: + has = self.find(s, By.CSS_SELECTOR, row) + if has: + return row + return None + def navigate_to_row_record(self, row, pkey_column=None): """ Navigate to record by clicking on a link. @@ -842,6 +855,18 @@ class UI_driver(object): checkbox.click() self.wait() + def get_record_value(self, pkey, column, parent=None, table_name=None): + """ + Get table column's text value + """ + row = self.get_row(pkey, parent, table_name) + s = "div[name=%s]" % column + val = None + if row: + el = self.find(s, By.CSS_SELECTOR, row) + val = el.text + return val + def has_record(self, pkey, parent=None, table_name=None): """ Check if table contains specific record. @@ -1506,6 +1531,13 @@ class UI_driver(object): key = key.lower() self.assert_record(key, negative=negative) + def assert_record_value(self, expected, pkey, column, parent=None, table_name=None): + """ + Assert that column's value of record defined by pkey equals expected value. + """ + val = self.get_record_value(pkey, column, parent, table_name) + assert expected == val, "Invalid value: '%s'. Expected: '%s'." % (val, expected) + def assert_class(self, element, cls, negative=False): """ Assert that element has certain class |