diff options
| author | Carlton Gibson <carlton.gibson@noumenal.es> | 2021-10-05 12:15:21 +0200 |
|---|---|---|
| committer | Carlton Gibson <carlton@noumenal.es> | 2021-10-06 12:00:19 +0200 |
| commit | 402ae37873974afa5093e6d6149175a118979cd9 (patch) | |
| tree | 93e478c92612c15b47aa9bdeac582a5685d1e754 /tests | |
| parent | 1c802ca2a9d3c66fb723695fe7ea597fb4802402 (diff) | |
Refs #33029 -- Fixed popups Selenium tests in headless mode.
Co-authored-by: Yash Jhunjhunwala <yash@jhunjhunwalaadvisors.com>
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/admin_views/tests.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/tests/admin_views/tests.py b/tests/admin_views/tests.py index 863521bee5..0ba81fde87 100644 --- a/tests/admin_views/tests.py +++ b/tests/admin_views/tests.py @@ -4649,6 +4649,8 @@ class SeleniumTests(AdminSeleniumTestCase): # Tabular inlines ---------------------------------------------------- # Initial inline + element = self.selenium.find_element_by_id('id_relatedprepopulated_set-2-0-status') + self.selenium.execute_script('window.scrollTo(0, %s);' % element.location['y']) self.selenium.find_element_by_id('id_relatedprepopulated_set-2-0-pubdate').send_keys('1234-12-07') self.select_option('#id_relatedprepopulated_set-2-0-status', 'option two') self.selenium.find_element_by_id('id_relatedprepopulated_set-2-0-name').send_keys( @@ -4992,32 +4994,35 @@ class SeleniumTests(AdminSeleniumTestCase): add_url = reverse('admin:admin_views_box_add', current_app=site.name) self.selenium.get(self.live_server_url + add_url) + base_window = self.selenium.current_window_handle self.selenium.find_element_by_id('add_id_next_box').click() self.wait_for_and_switch_to_popup() + popup_window_test = self.selenium.current_window_handle self.selenium.find_element_by_id('id_title').send_keys('test') self.selenium.find_element_by_id('add_id_next_box').click() self.wait_for_and_switch_to_popup(num_windows=3) + popup_window_test2 = self.selenium.current_window_handle self.selenium.find_element_by_id('id_title').send_keys('test2') self.selenium.find_element_by_id('add_id_next_box').click() self.wait_for_and_switch_to_popup(num_windows=4) self.selenium.find_element_by_id('id_title').send_keys('test3') self.selenium.find_element_by_xpath('//input[@value="Save"]').click() - self.selenium.switch_to.window(self.selenium.window_handles[-1]) + self.selenium.switch_to.window(popup_window_test2) select = Select(self.selenium.find_element_by_id('id_next_box')) next_box_id = str(Box.objects.get(title="test3").id) self.assertEqual(select.first_selected_option.get_attribute('value'), next_box_id) self.selenium.find_element_by_xpath('//input[@value="Save"]').click() - self.selenium.switch_to.window(self.selenium.window_handles[-1]) + self.selenium.switch_to.window(popup_window_test) select = Select(self.selenium.find_element_by_id('id_next_box')) next_box_id = str(Box.objects.get(title="test2").id) self.assertEqual(select.first_selected_option.get_attribute('value'), next_box_id) self.selenium.find_element_by_xpath('//input[@value="Save"]').click() - self.selenium.switch_to.window(self.selenium.window_handles[-1]) + self.selenium.switch_to.window(base_window) select = Select(self.selenium.find_element_by_id('id_next_box')) next_box_id = str(Box.objects.get(title="test").id) self.assertEqual(select.first_selected_option.get_attribute('value'), next_box_id) @@ -5046,11 +5051,13 @@ class SeleniumTests(AdminSeleniumTestCase): self.selenium.switch_to.window(test2_window) self.selenium.find_element_by_xpath('//input[@value="Save"]').click() + self.wait_until(lambda d: len(d.window_handles) == 2, 1) self.assertEqual(len(self.selenium.window_handles), 2) # Close final popup to clean up test. self.selenium.switch_to.window(test_window) self.selenium.find_element_by_xpath('//input[@value="Save"]').click() + self.wait_until(lambda d: len(d.window_handles) == 1, 1) self.selenium.switch_to.window(self.selenium.window_handles[-1]) |
