summaryrefslogtreecommitdiffstats
path: root/ipatests/test_webui/test_range.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipatests/test_webui/test_range.py')
-rw-r--r--ipatests/test_webui/test_range.py114
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)