From 57bdcaf4177320cfc0f00ea49ffc166cbdc44d89 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 18 Oct 2024 13:57:34 +0100 Subject: bitbake: toaster/tests/functional/project_config: Fix the wait calls to avoid polling Drop poll calls within the module, adding wait calls for elements of the page where testing showed it was needed. (Bitbake rev: 26746eae31f126ff87e678da66dcc976e412c89b) Signed-off-by: Richard Purdie --- .../tests/functional/test_project_config.py | 47 ++++++++++------------ 1 file changed, 21 insertions(+), 26 deletions(-) (limited to 'bitbake/lib/toaster/tests/functional/test_project_config.py') diff --git a/bitbake/lib/toaster/tests/functional/test_project_config.py b/bitbake/lib/toaster/tests/functional/test_project_config.py index 41149e5e55..fcb1bc3284 100644 --- a/bitbake/lib/toaster/tests/functional/test_project_config.py +++ b/bitbake/lib/toaster/tests/functional/test_project_config.py @@ -36,10 +36,10 @@ class TestProjectConfig(SeleniumFunctionalTestCase): url = reverse('projectconf', args=(TestProjectConfig.project_id,)) self.get(url) - self.wait_until_visible('#config-nav', poll=3) + self.wait_until_visible('#config-nav') bbv_page_link = self._get_config_nav_item(9) bbv_page_link.click() - self.wait_until_visible('#config-nav', poll=3) + self.wait_until_visible('#config-nav') def test_no_underscore_iamgefs_type(self): """ @@ -48,13 +48,13 @@ class TestProjectConfig(SeleniumFunctionalTestCase): self._navigate_bbv_page() imagefs_type = "foo_bar" - self.wait_until_visible('#change-image_fstypes-icon', poll=2) + self.wait_until_visible('#change-image_fstypes-icon') self.click('#change-image_fstypes-icon') self.enter_text('#new-imagefs_types', imagefs_type) - element = self.wait_until_visible('#hintError-image-fs_type', poll=2) + element = self.wait_until_visible('#hintError-image-fs_type') self.assertTrue(("A valid image type cannot include underscores" in element.text), "Did not find underscore error message") @@ -68,7 +68,7 @@ class TestProjectConfig(SeleniumFunctionalTestCase): imagefs_type = "btrfs" - self.wait_until_visible('#change-image_fstypes-icon', poll=2) + self.wait_until_visible('#change-image_fstypes-icon') self.click('#change-image_fstypes-icon') @@ -87,22 +87,20 @@ class TestProjectConfig(SeleniumFunctionalTestCase): """ self._navigate_bbv_page() - self.wait_until_visible('#change-image_fstypes-icon', poll=2) - + self.wait_until_visible('#change-image_fstypes-icon') self.click('#change-image_fstypes-icon') checkboxes_selector = '.fs-checkbox-fstypes' - self.wait_until_visible(checkboxes_selector, poll=2) + self.wait_until_visible(checkboxes_selector) checkboxes = self.find_all(checkboxes_selector) for checkbox in checkboxes: if checkbox.get_attribute("value") == "cpio": checkbox.click() + self.wait_until_visible('#new-imagefs_types') element = self.driver.find_element(By.ID, 'new-imagefs_types') - self.wait_until_visible('#new-imagefs_types', poll=2) - self.assertTrue(("cpio" in element.get_attribute('value'), "Imagefs not added into the textbox")) checkbox.click() @@ -118,20 +116,19 @@ class TestProjectConfig(SeleniumFunctionalTestCase): # activate the input to edit download dir try: - change_dl_dir_btn = self.wait_until_visible('#change-dl_dir-icon', poll=2) + change_dl_dir_btn = self.wait_until_visible('#change-dl_dir-icon') except TimeoutException: # If download dir is not displayed, test is skipped change_dl_dir_btn = None if change_dl_dir_btn: - change_dl_dir_btn = self.wait_until_visible('#change-dl_dir-icon', poll=2) change_dl_dir_btn.click() # downloads dir path doesn't start with / or ${...} - input_field = self.wait_until_visible('#new-dl_dir', poll=2) + input_field = self.wait_until_visible('#new-dl_dir') input_field.clear() self.enter_text('#new-dl_dir', 'home/foo') - element = self.wait_until_visible('#hintError-initialChar-dl_dir', poll=2) + element = self.wait_until_visible('#hintError-initialChar-dl_dir') msg = 'downloads directory path starts with invalid character but ' \ 'treated as valid' @@ -141,7 +138,7 @@ class TestProjectConfig(SeleniumFunctionalTestCase): self.driver.find_element(By.ID, 'new-dl_dir').clear() self.enter_text('#new-dl_dir', '/foo/bar a') - element = self.wait_until_visible('#hintError-dl_dir', poll=2) + element = self.wait_until_visible('#hintError-dl_dir') msg = 'downloads directory path characters invalid but treated as valid' self.assertTrue((self.INVALID_PATH_CHAR_TEXT in element.text), msg) @@ -149,7 +146,7 @@ class TestProjectConfig(SeleniumFunctionalTestCase): self.driver.find_element(By.ID,'new-dl_dir').clear() self.enter_text('#new-dl_dir', '${TOPDIR}/down foo') - element = self.wait_until_visible('#hintError-dl_dir', poll=2) + element = self.wait_until_visible('#hintError-dl_dir') msg = 'downloads directory path characters invalid but treated as valid' self.assertTrue((self.INVALID_PATH_CHAR_TEXT in element.text), msg) @@ -177,10 +174,7 @@ class TestProjectConfig(SeleniumFunctionalTestCase): self._navigate_bbv_page() try: - btn_chg_sstate_dir = self.wait_until_visible( - '#change-sstate_dir-icon', - poll=2 - ) + btn_chg_sstate_dir = self.wait_until_visible('#change-sstate_dir-icon') self.click('#change-sstate_dir-icon') except TimeoutException: # If sstate_dir is not displayed, test is skipped @@ -188,10 +182,10 @@ class TestProjectConfig(SeleniumFunctionalTestCase): if btn_chg_sstate_dir: # Skip continuation if sstate_dir is not displayed # path doesn't start with / or ${...} - input_field = self.wait_until_visible('#new-sstate_dir', poll=2) + input_field = self.wait_until_visible('#new-sstate_dir') input_field.clear() self.enter_text('#new-sstate_dir', 'home/foo') - element = self.wait_until_visible('#hintError-initialChar-sstate_dir', poll=2) + element = self.wait_until_visible('#hintError-initialChar-sstate_dir') msg = 'sstate directory path starts with invalid character but ' \ 'treated as valid' @@ -201,7 +195,7 @@ class TestProjectConfig(SeleniumFunctionalTestCase): self.driver.find_element(By.ID, 'new-sstate_dir').clear() self.enter_text('#new-sstate_dir', '/foo/bar a') - element = self.wait_until_visible('#hintError-sstate_dir', poll=2) + element = self.wait_until_visible('#hintError-sstate_dir') msg = 'sstate directory path characters invalid but treated as valid' self.assertTrue((self.INVALID_PATH_CHAR_TEXT in element.text), msg) @@ -209,7 +203,7 @@ class TestProjectConfig(SeleniumFunctionalTestCase): self.driver.find_element(By.ID,'new-sstate_dir').clear() self.enter_text('#new-sstate_dir', '${TOPDIR}/down foo') - element = self.wait_until_visible('#hintError-sstate_dir', poll=2) + element = self.wait_until_visible('#hintError-sstate_dir') msg = 'sstate directory path characters invalid but treated as valid' self.assertTrue((self.INVALID_PATH_CHAR_TEXT in element.text), msg) @@ -233,13 +227,14 @@ class TestProjectConfig(SeleniumFunctionalTestCase): var_name, field, btn_id, input_id, value, save_btn, *_ = kwargs.values() """ Change bitbake variable value """ self._navigate_bbv_page() - self.wait_until_visible(f'#{btn_id}', poll=2) + self.wait_until_visible(f'#{btn_id}') if kwargs.get('new_variable'): self.find(f"#{btn_id}").clear() self.enter_text(f"#{btn_id}", f"{var_name}") else: self.click(f'#{btn_id}') - self.wait_until_visible(f'#{input_id}', poll=2) + + self.wait_until_visible(f'#{input_id}') if kwargs.get('is_select'): select = Select(self.find(f'#{input_id}')) -- cgit v1.2.3-54-g00ecf