summaryrefslogtreecommitdiffstats
path: root/ipatests/test_webui/test_trust.py
diff options
context:
space:
mode:
authorPetr Vobornik <pvoborni@redhat.com>2013-08-16 18:18:53 +0200
committerPetr Vobornik <pvoborni@redhat.com>2013-08-22 15:23:56 +0200
commit278c87cc624f3f448d2686eca27e750e7276acad (patch)
tree69f275a583a9b0b711a75f14979c1e9e9fc3bc3a /ipatests/test_webui/test_trust.py
parent0584caf56a33232b15c53ea5d6371bb43c3903aa (diff)
downloadfreeipa-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/test_trust.py')
-rw-r--r--ipatests/test_webui/test_trust.py93
1 files changed, 78 insertions, 15 deletions
diff --git a/ipatests/test_webui/test_trust.py b/ipatests/test_webui/test_trust.py
index e308844d9..713bcfa64 100644
--- a/ipatests/test_webui/test_trust.py
+++ b/ipatests/test_webui/test_trust.py
@@ -22,6 +22,7 @@ Trust tests
"""
from ipatests.test_webui.ui_driver import UI_driver
+from ipatests.test_webui.task_range import range_tasks
ENTITY = 'trust'
CONFIG_ENTITY = 'trustconfig'
@@ -39,27 +40,18 @@ CONFIG_DATA2 = {
}
-class test_trust(UI_driver):
+class trust_tasks(UI_driver):
- def __init__(self, *args, **kwargs):
- super(test_trust, self).__init__(args, kwargs)
-
- if not self.has_trusts():
- self.skip('Trusts not configured')
-
- def get_data(self):
+ def get_data(self, add_data=None):
domain = self.config.get('ad_domain')
- admin = self.config.get('ad_admin')
- psw = self.config.get('ad_password')
+
+ if not add_data:
+ add_data = self.get_add_data()
data = {
'pkey': domain,
- 'add': [
- ('textbox', 'realm_server', domain),
- ('textbox', 'realm_admin', admin),
- ('password', 'realm_passwd', psw),
- ],
+ 'add': add_data,
'mod': [
('multivalued', 'ipantsidblacklistincoming', [
('del', 'S-1-5-18'),
@@ -74,6 +66,40 @@ class test_trust(UI_driver):
return data
+ def get_add_data(self, range_type=None, base_id=None, range_size=None):
+
+ domain = self.config.get('ad_domain')
+ admin = self.config.get('ad_admin')
+ psw = self.config.get('ad_password')
+
+ add = [
+ ('textbox', 'realm_server', domain),
+ ('textbox', 'realm_admin', admin),
+ ('password', 'realm_passwd', psw),
+ ]
+
+ if range_type:
+ add.append(('radio', 'range_type', range_type))
+ if base_id:
+ add.append(('textbox', 'base_id', base_id))
+ if range_size:
+ add.append(('textbox', 'range_size', range_size))
+
+ return add
+
+ def get_range_name(self):
+ domain = self.config.get('ad_domain')
+ return domain.upper() + '_id_range'
+
+
+class test_trust(trust_tasks):
+
+ def __init__(self, *args, **kwargs):
+ super(test_trust, self).__init__(args, kwargs)
+
+ if not self.has_trusts():
+ self.skip('Trusts not configured')
+
def test_crud(self):
"""
Basic basic CRUD: trust
@@ -82,9 +108,46 @@ class test_trust(UI_driver):
"""
self.init_app()
data = self.get_data()
+ self.navigate_to_entity('idrange')
+ self.delete_record(self.get_range_name())
self.basic_crud(ENTITY, data)
+ self.navigate_to_entity('idrange')
+ self.delete_record(self.get_range_name())
+
+ def test_range_types(self):
+
+ self.init_app()
+
+ r_tasks = range_tasks(self.driver, self.config)
+ r_tasks.get_shifts()
+ base_id = r_tasks.id_shift + 100
+ range_size = 50
+ range_pkey = self.get_range_name()
+ column = 'iparangetype'
+
+ self.navigate_to_entity('idrange')
+ self.delete_record(range_pkey)
+
+ add = self.get_add_data('ipa-ad-trust', base_id, range_size)
+ data = self.get_data(add_data=add)
+ self.add_record(ENTITY, data, delete=True)
+ self.navigate_to_entity('idrange')
+ self.facet_button_click('refresh')
+ self.wait_for_request(n=2)
+ self.assert_record_value('Active Directory domain range', range_pkey, column)
+ self.delete_record(range_pkey)
+
+ add = self.get_add_data('ipa-ad-trust-posix', base_id, range_size)
+ data = self.get_data(add_data=add)
+ self.add_record(ENTITY, data, delete=True)
+ self.navigate_to_entity('idrange')
+ self.facet_button_click('refresh')
+ self.wait_for_request(n=2)
+ self.assert_record_value('Active Directory trust range with POSIX attributes', range_pkey, column)
+ self.delete_record(range_pkey)
def test_config_mod(self):
+
self.init_app()
self.navigate_to_entity(CONFIG_ENTITY)