mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
webui-ci: adjust id range tests to new validator
Reviewed-By: Adam Misnyovszki <amisnyov@redhat.com>
This commit is contained in:
parent
5d78cdf809
commit
7eff8ad7dc
@ -32,8 +32,8 @@ class range_tasks(UI_driver):
|
|||||||
result = self.execute_api_from_ui('idrange_find', [], {})
|
result = self.execute_api_from_ui('idrange_find', [], {})
|
||||||
idranges = result['result']['result']
|
idranges = result['result']['result']
|
||||||
|
|
||||||
id_shift = 0
|
max_id = 0
|
||||||
rid_shift = 0
|
max_rid = 0
|
||||||
|
|
||||||
for idrange in idranges:
|
for idrange in idranges:
|
||||||
size = int(idrange['ipaidrangesize'][0])
|
size = int(idrange['ipaidrangesize'][0])
|
||||||
@ -50,16 +50,14 @@ class range_tasks(UI_driver):
|
|||||||
secondary_base_rid = int(idrange['ipasecondarybaserid'][0])
|
secondary_base_rid = int(idrange['ipasecondarybaserid'][0])
|
||||||
rid_end = max(base_rid, secondary_base_rid) + size
|
rid_end = max(base_rid, secondary_base_rid) + size
|
||||||
|
|
||||||
if id_shift < id_end:
|
if max_id < id_end:
|
||||||
id_shift = id_end + 1000000
|
max_id = id_end + 1000000
|
||||||
|
|
||||||
if rid_shift < rid_end:
|
if max_rid < rid_end:
|
||||||
rid_shift = rid_end + 1000000
|
max_rid = rid_end + 1000000
|
||||||
|
|
||||||
self.id_shift = id_shift
|
self.max_id = max_id
|
||||||
self.rid_shift = rid_shift
|
self.max_rid = max_rid
|
||||||
self.sec_rid_shift = rid_shift + 1000
|
|
||||||
self.shift = 0
|
|
||||||
|
|
||||||
def get_sid(self):
|
def get_sid(self):
|
||||||
result = self.execute_api_from_ui('trust_find', [], {})
|
result = self.execute_api_from_ui('trust_find', [], {})
|
||||||
@ -85,17 +83,24 @@ class range_tasks(UI_driver):
|
|||||||
|
|
||||||
def get_add_data(self, pkey, range_type='ipa-local', size=50, shift=100, sid=None):
|
def get_add_data(self, pkey, range_type='ipa-local', size=50, shift=100, sid=None):
|
||||||
|
|
||||||
self.shift += shift
|
base_id = self.max_id + shift
|
||||||
|
self.max_id = base_id + size
|
||||||
|
|
||||||
|
base_rid = self.max_rid + shift
|
||||||
|
self.max_rid = base_rid + size
|
||||||
|
|
||||||
add = [
|
add = [
|
||||||
('textbox', 'cn', pkey),
|
('textbox', 'cn', pkey),
|
||||||
('textbox', 'ipabaseid', str(self.id_shift + self.shift)),
|
('textbox', 'ipabaseid', str(base_id)),
|
||||||
('textbox', 'ipaidrangesize', str(size)),
|
('textbox', 'ipaidrangesize', str(size)),
|
||||||
('textbox', 'ipabaserid', str(self.rid_shift + self.shift)),
|
('textbox', 'ipabaserid', str(base_rid)),
|
||||||
('radio', 'iparangetype', range_type),
|
('radio', 'iparangetype', range_type),
|
||||||
]
|
]
|
||||||
|
|
||||||
if not sid:
|
if not sid:
|
||||||
add.append(('textbox', 'ipasecondarybaserid', str(self.sec_rid_shift + self.shift)))
|
base_rid = self.max_rid + shift
|
||||||
|
self.max_rid = base_rid + size
|
||||||
|
add.append(('textbox', 'ipasecondarybaserid', str(base_rid)))
|
||||||
if sid:
|
if sid:
|
||||||
add.append(('textbox', 'ipanttrusteddomainsid', sid))
|
add.append(('textbox', 'ipanttrusteddomainsid', sid))
|
||||||
|
|
||||||
|
@ -41,6 +41,13 @@ class test_range(range_tasks):
|
|||||||
def test_types(self):
|
def test_types(self):
|
||||||
"""
|
"""
|
||||||
Test range types
|
Test range types
|
||||||
|
|
||||||
|
Only 'local' and 'ipa-ad-trust' types are tested since range validation
|
||||||
|
made quite hard to test the other types:
|
||||||
|
|
||||||
|
- 'ipa-ad-trust-posix' can be tested only with subdomains.
|
||||||
|
- 'ipa-ad-winsync' and 'ipa-ipa-trust' and are not supported yet
|
||||||
|
https://fedorahosted.org/freeipa/ticket/4323
|
||||||
"""
|
"""
|
||||||
self.init_app()
|
self.init_app()
|
||||||
self.get_shifts()
|
self.get_shifts()
|
||||||
@ -73,28 +80,8 @@ class test_range(range_tasks):
|
|||||||
self.add_record(ENTITY, data, navigate=False)
|
self.add_record(ENTITY, data, navigate=False)
|
||||||
self.assert_record_value('Active Directory domain range', pkey_ad, column)
|
self.assert_record_value('Active Directory domain range', pkey_ad, column)
|
||||||
|
|
||||||
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)
|
|
||||||
|
|
||||||
self.delete(trust_mod.ENTITY, [trust_data])
|
self.delete(trust_mod.ENTITY, [trust_data])
|
||||||
|
|
||||||
self.navigate_to_entity(ENTITY)
|
self.navigate_to_entity(ENTITY)
|
||||||
self.delete_record(pkey_ad)
|
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_local)
|
||||||
self.delete_record(pkey_winsync)
|
|
||||||
self.delete_record(pkey_trust)
|
|
||||||
|
@ -120,8 +120,9 @@ class test_trust(trust_tasks):
|
|||||||
|
|
||||||
r_tasks = range_tasks(self.driver, self.config)
|
r_tasks = range_tasks(self.driver, self.config)
|
||||||
r_tasks.get_shifts()
|
r_tasks.get_shifts()
|
||||||
base_id = r_tasks.id_shift + 100
|
range_add = r_tasks.get_add_data('')
|
||||||
range_size = 50
|
base_id = range_add[2][2]
|
||||||
|
range_size = range_add[3][2]
|
||||||
range_pkey = self.get_range_name()
|
range_pkey = self.get_range_name()
|
||||||
column = 'iparangetype'
|
column = 'iparangetype'
|
||||||
|
|
||||||
@ -135,6 +136,7 @@ class test_trust(trust_tasks):
|
|||||||
self.assert_record_value('Active Directory domain range', range_pkey, column)
|
self.assert_record_value('Active Directory domain range', range_pkey, column)
|
||||||
self.delete_record(range_pkey)
|
self.delete_record(range_pkey)
|
||||||
|
|
||||||
|
self.request_timeout = 60
|
||||||
add = self.get_add_data('ipa-ad-trust-posix', base_id, range_size)
|
add = self.get_add_data('ipa-ad-trust-posix', base_id, range_size)
|
||||||
data = self.get_data(add_data=add)
|
data = self.get_data(add_data=add)
|
||||||
self.add_record(ENTITY, data, delete=True)
|
self.add_record(ENTITY, data, delete=True)
|
||||||
|
@ -31,6 +31,7 @@ import os
|
|||||||
try:
|
try:
|
||||||
from selenium import webdriver
|
from selenium import webdriver
|
||||||
from selenium.common.exceptions import NoSuchElementException
|
from selenium.common.exceptions import NoSuchElementException
|
||||||
|
from selenium.common.exceptions import InvalidElementStateException
|
||||||
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
|
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
|
||||||
from selenium.webdriver.common.keys import Keys
|
from selenium.webdriver.common.keys import Keys
|
||||||
from selenium.webdriver.common.by import By
|
from selenium.webdriver.common.by import By
|
||||||
@ -636,8 +637,12 @@ class UI_driver(object):
|
|||||||
if not parent:
|
if not parent:
|
||||||
parent = self.get_form()
|
parent = self.get_form()
|
||||||
tb = self.find(selector, By.CSS_SELECTOR, parent, strict=True)
|
tb = self.find(selector, By.CSS_SELECTOR, parent, strict=True)
|
||||||
tb.clear()
|
try:
|
||||||
tb.send_keys(value)
|
tb.clear()
|
||||||
|
tb.send_keys(value)
|
||||||
|
except InvalidElementStateException as e:
|
||||||
|
msg = "Invalid Element State, el: %s, value: %s, error: %s" % (selector, value, e)
|
||||||
|
assert False, msg
|
||||||
|
|
||||||
def fill_input(self, name, value, input_type="text", parent=None):
|
def fill_input(self, name, value, input_type="text", parent=None):
|
||||||
"""
|
"""
|
||||||
|
Loading…
Reference in New Issue
Block a user