From ef7a9037619ae27372df34f98204fe751f04ffcf Mon Sep 17 00:00:00 2001 From: Serhii Tsymbaliuk Date: Wed, 9 Jan 2019 15:43:33 +0100 Subject: [PATCH] Fix "Configured size limit exceeded" warning on Web UI Suppress size limit warning in 'refresh' command. Ticket: https://pagure.io/freeipa/issue/7603 Reviewed-By: Alexander Bokovoy --- install/ui/src/freeipa/rpc.js | 9 +++++++++ install/ui/src/freeipa/search.js | 3 ++- install/ui/src/freeipa/widget.js | 2 +- ipatests/test_webui/test_config.py | 26 ++++++++++++++++++++++++++ 4 files changed, 38 insertions(+), 2 deletions(-) diff --git a/install/ui/src/freeipa/rpc.js b/install/ui/src/freeipa/rpc.js index 84282f78d..1fa2308a2 100644 --- a/install/ui/src/freeipa/rpc.js +++ b/install/ui/src/freeipa/rpc.js @@ -1105,5 +1105,14 @@ rpc.extract_objects = function(values) { return values; }; +/** + * Server side error/warning codes + * + * Add new errors from ipalib.messages only if necessary. + */ +rpc.errors = { + search_result_truncated: 13017 +}; + return rpc; }); diff --git a/install/ui/src/freeipa/search.js b/install/ui/src/freeipa/search.js index 0966403c3..6a6dcbdff 100644 --- a/install/ui/src/freeipa/search.js +++ b/install/ui/src/freeipa/search.js @@ -291,7 +291,8 @@ IPA.search_facet = function(spec, no_init) { name: that.get_search_command_name(), entity: that.managed_entity.name, method: 'find', - args: args + args: args, + suppress_warnings: [rpc.errors.search_result_truncated] }); command.set_options(that.get_refresh_command_options()); diff --git a/install/ui/src/freeipa/widget.js b/install/ui/src/freeipa/widget.js index d7618d678..dd5e66a70 100644 --- a/install/ui/src/freeipa/widget.js +++ b/install/ui/src/freeipa/widget.js @@ -5021,7 +5021,7 @@ IPA.entity_select_widget = function(spec) { method: 'find', args: [filter], options: that.filter_options, - suppress_warnings: [13017] + suppress_warnings: [rpc.errors.search_result_truncated] }); var no_members = metadata.get('@mc-opt:' + cmd.get_command() + ':no_members'); if (no_members) { diff --git a/ipatests/test_webui/test_config.py b/ipatests/test_webui/test_config.py index 09a87de5e..b411ef8d5 100644 --- a/ipatests/test_webui/test_config.py +++ b/ipatests/test_webui/test_config.py @@ -164,6 +164,32 @@ class test_config(UI_driver): self.fill_input(size_limit_s, def_val) self.facet_button_click('save') + @screenshot + def test_size_limit_notification(self): + """ + Test if no notification is shown when size limit exceeded + """ + self.init_app() + self.navigate_to_entity(config_data.ENTITY) + + size_limit_s = 'ipasearchrecordslimit' + def_val = self.get_field_value(size_limit_s) + + self.fill_input(size_limit_s, '10') + self.facet_button_click('save') + + self.navigate_to_entity('cert') + # wait for a half sec for notification to appear + self.wait(0.5) + warning = self.find_by_selector('div.notification-area .alert-warning') + try: + assert not warning, "Warning present: {}".format(warning.text) + finally: + # restore previous value + self.navigate_to_entity(config_data.ENTITY) + self.fill_input(size_limit_s, def_val) + self.facet_button_click('save') + @screenshot def test_time_limits(self): """