diff options
Diffstat (limited to 'ipatests/test_webui/test_range.py')
-rw-r--r-- | ipatests/test_webui/test_range.py | 114 |
1 files changed, 63 insertions, 51 deletions
diff --git a/ipatests/test_webui/test_range.py b/ipatests/test_webui/test_range.py index 0a7da7e4..98c4098a 100644 --- a/ipatests/test_webui/test_range.py +++ b/ipatests/test_webui/test_range.py @@ -18,73 +18,85 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. """ -User tests +Range tests """ -from ipatests.test_webui.ui_driver import UI_driver +import ipatests.test_webui.test_trust as trust_mod +from ipatests.test_webui.task_range import range_tasks ENTITY = 'idrange' PKEY = 'itest-range' -class test_range(UI_driver): +class test_range(range_tasks): - def get_shifts(self, idranges=None): + def test_crud(self): + """ + Basic CRUD: range + """ + self.init_app() + self.get_shifts() + self.basic_crud(ENTITY, self.get_data(PKEY)) + + def test_types(self): + """ + Test range types + """ + self.init_app() + self.get_shifts() - if not idranges: - result = self.execute_api_from_ui('idrange_find', [], {}) - idranges = result['result']['result'] + pkey_local = 'itest-local' + pkey_ad = 'itest-ad' + pkey_posix = 'itest-ad-posix' + pkey_winsync = 'itest-ad-winsync' + pkey_trust = 'itest-ipa-trust' + column = 'iparangetype' - id_shift = 0 - rid_shift = 0 + add = self.get_add_data(pkey_local) + data = self.get_data(pkey_local, add_data=add) + self.add_record(ENTITY, data) + self.assert_record_value('local domain range', pkey_local, column) - for idrange in idranges: - size = int(idrange['ipaidrangesize'][0]) - base_id = int(idrange['ipabaseid'][0]) + if self.has_trusts(): - id_end = base_id + size - rid_end = 0 + trust_tasks = trust_mod.trust_tasks() + trust_data = trust_tasks.get_data() - if 'ipabaserid' in idrange: - base_rid = int(idrange['ipabaserid'][0]) - rid_end = base_rid + size + self.add_record(trust_mod.ENTITY, trust_data) - if 'ipasecondarybaserid' in idrange: - secondary_base_rid = int(idrange['ipasecondarybaserid'][0]) - rid_end = max(base_rid, secondary_base_rid) + size + sid = self.get_sid() - if id_shift < id_end: - id_shift = id_end + 1000000 + self.navigate_to_entity(ENTITY) + self.facet_button_click('refresh') + self.wait_for_request(n=2) - if rid_shift < rid_end: - rid_shift = rid_end + 1000000 + add = self.get_add_data(pkey_ad, range_type='ipa-ad-trust', sid=sid) + data = self.get_data(pkey_ad, add_data=add) + self.add_record(ENTITY, data, navigate=False) + self.assert_record_value('Active Directory domain range', pkey_ad, column) - self.id_shift = id_shift - self.rid_shift = rid_shift - self.sec_rid_shift = rid_shift + 1000 - self.shift = 0 + add = self.get_add_data(pkey_posix, range_type='ipa-ad-trust-posix', sid=sid) + data = self.get_data(pkey_posix, add_data=add) + self.add_record(ENTITY, data, navigate=False) + self.assert_record_value('Active Directory trust range with POSIX attributes', pkey_posix, column) - def get_data(self, pkey, size=50, shift=100): - self.shift += shift - data = { - 'pkey': pkey, - 'add': [ - ('textbox', 'cn', pkey), - ('textbox', 'ipabaseid', str(self.id_shift + self.shift)), - ('textbox', 'ipaidrangesize', str(size)), - ('textbox', 'ipabaserid', str(self.rid_shift + self.shift)), - ('textbox', 'ipasecondarybaserid', str(self.sec_rid_shift + self.shift)), - ], - 'mod': [ - ('textbox', 'ipaidrangesize', str(size + 1)), - ], - } - return data + self.delete(trust_mod.ENTITY, [trust_data]) - def test_crud(self): - """ - Basic CRUD: range - """ - self.init_app() - self.get_shifts() - self.basic_crud(ENTITY, self.get_data(PKEY)) + self.navigate_to_entity(ENTITY) + self.delete_record(pkey_ad) + self.delete_record(pkey_posix) + self.delete_record(trust_tasks.get_range_name()) + + add = self.get_add_data(pkey_winsync, range_type='ipa-ad-winsync') + data = self.get_data(pkey_winsync, add_data=add) + self.add_record(ENTITY, data, navigate=False) + self.assert_record_value('Active Directory winsync range', pkey_winsync, column) + + add = self.get_add_data(pkey_trust, range_type='ipa-ipa-trust') + data = self.get_data(pkey_trust, add_data=add) + self.add_record(ENTITY, data, navigate=False) + self.assert_record_value('IPA trust range', pkey_trust, column) + + self.delete_record(pkey_local) + self.delete_record(pkey_winsync) + self.delete_record(pkey_trust) |