diff options
author | Felipe Barreto <fbarreto@redhat.com> | 2018-02-08 16:07:49 -0200 |
---|---|---|
committer | Christian Heimes <cheimes@redhat.com> | 2018-02-16 09:57:07 +0100 |
commit | 12da43c54fb927b48677fcca50f5110c5e659b1e (patch) | |
tree | f1d5f3b66f702471ba2461ca7dce2e7e3cd65c12 | |
parent | 49a17e98b0eb62636f4c4f0f43218a36fcea383d (diff) | |
download | freeipa-12da43c54fb927b48677fcca50f5110c5e659b1e.tar.gz freeipa-12da43c54fb927b48677fcca50f5110c5e659b1e.tar.xz freeipa-12da43c54fb927b48677fcca50f5110c5e659b1e.zip |
WebUI Tests: fixing test_range test case
As described in the commit [1] and ticket [2], it should not be possible to
change the range of a local IPA domain.
The basic_crud was changed to make it flexible to do not run the mod operation
if needed.
[1] 55feea500be1f4ae7bf02ef3c48377a6751ca71d
[2] https://pagure.io/freeipa/issue/4826
Reviewed-By: Petr Vobornik <pvoborni@redhat.com>
-rw-r--r-- | ipatests/test_webui/test_range.py | 36 | ||||
-rw-r--r-- | ipatests/test_webui/ui_driver.py | 3 |
2 files changed, 37 insertions, 2 deletions
diff --git a/ipatests/test_webui/test_range.py b/ipatests/test_webui/test_range.py index bc0732510..6ea0485f3 100644 --- a/ipatests/test_webui/test_range.py +++ b/ipatests/test_webui/test_range.py @@ -40,7 +40,41 @@ class test_range(range_tasks): """ self.init_app() self.get_shifts() - self.basic_crud(ENTITY, self.get_data(PKEY)) + self.basic_crud(ENTITY, self.get_data(PKEY), mod=False) + + @screenshot + def test_mod(self): + """ + Test mod operating in a new range + """ + + self.init_app() + self.navigate_to_entity(ENTITY) + self.get_shifts() + + add = self.get_add_data(PKEY) + data = self.get_data(PKEY, add_data=add) + + self.add_record(ENTITY, data, facet='search', navigate=False, + facet_btn='add', dialog_name='add', + dialog_btn='add') + self.navigate_to_record(PKEY) + + # changes idrange and tries to save it + self.fill_fields(data['mod'], undo=True) + self.assert_facet_button_enabled('save') + self.facet_button_click('save') + self.wait_for_request(n=2) + + # the user should not be able to change the ID allocation for + # IPA domain, as it's explained in https://pagure.io/freeipa/issue/4826 + dialog = self.get_last_error_dialog() + assert ("can not be used to change ID allocation for local IPA domain" + in dialog.text) + self.dialog_button_click('cancel') + self.navigate_to_entity(ENTITY) + self.wait_for_request() + self.delete_record(PKEY) @screenshot def test_types(self): diff --git a/ipatests/test_webui/ui_driver.py b/ipatests/test_webui/ui_driver.py index b8afef95c..88a0798d4 100644 --- a/ipatests/test_webui/ui_driver.py +++ b/ipatests/test_webui/ui_driver.py @@ -1293,6 +1293,7 @@ class UI_driver(object): update_btn='save', breadcrumb=None, navigate=True, + mod=True, delete=True): """ Basic CRUD operation sequence. @@ -1343,7 +1344,7 @@ class UI_driver(object): self.validate_fields(data.get('add_v')) # 4. Mod values - if data.get('mod'): + if mod and data.get('mod'): self.mod_record(entity, data, details_facet, update_btn) self.validate_fields(data.get('mod_v')) |