77 TimeoutException ,
88 UnexpectedAlertPresentException ,
99)
10+ from selenium .webdriver .common .alert import Alert
1011from selenium .webdriver .common .by import By
1112from selenium .webdriver .common .desired_capabilities import DesiredCapabilities
1213from selenium .webdriver .support import expected_conditions as EC
@@ -57,14 +58,16 @@ def tearDown(self):
5758 try :
5859 self .web_driver .refresh ()
5960 except UnexpectedAlertPresentException :
60- self .web_driver .switch_to_alert ().accept ()
61+ alert = Alert (self .web_driver )
62+ alert .accept ()
6163 else :
6264 try :
6365 WebDriverWait (self .web_driver , 1 ).until (EC .alert_is_present ())
6466 except TimeoutException :
6567 pass
6668 else :
67- self .web_driver .switch_to_alert ().accept ()
69+ alert = Alert (self .web_driver )
70+ alert .accept ()
6871 self .web_driver .refresh ()
6972 WebDriverWait (self .web_driver , 2 ).until (
7073 EC .visibility_of_element_located ((By .XPATH , '//*[@id="site-name"]' ))
@@ -76,29 +79,33 @@ def test_create_new_device(self):
7679 org = self ._get_org ()
7780 self .login ()
7881 self .open (reverse ('admin:config_device_add' ))
79- self .web_driver .find_element_by_name ('name' ).send_keys ('11:22:33:44:55:66' )
80- self .web_driver .find_element_by_css_selector (
81- '#select2-id_organization-container'
82+ self .web_driver .find_element (by = By .NAME , value = 'name' ).send_keys (
83+ '11:22:33:44:55:66'
84+ )
85+ self .web_driver .find_element (
86+ by = By .CSS_SELECTOR , value = '#select2-id_organization-container'
8287 ).click ()
8388 WebDriverWait (self .web_driver , 2 ).until (
8489 EC .invisibility_of_element_located (
8590 (By .CSS_SELECTOR , '.select2-results__option.loading-results' )
8691 )
8792 )
88- self .web_driver .find_element_by_class_name ( 'select2-search__field' ). send_keys (
89- org . name
90- )
93+ self .web_driver .find_element (
94+ by = By . CLASS_NAME , value = 'select2-search__field'
95+ ). send_keys ( org . name )
9196 WebDriverWait (self .web_driver , 2 ).until (
9297 EC .invisibility_of_element_located (
9398 (By .CSS_SELECTOR , '.select2-results__option.loading-results' )
9499 )
95100 )
96- self .web_driver .find_element_by_class_name ('select2-results__option' ).click ()
97- self .web_driver .find_element_by_name ('mac_address' ).send_keys (
101+ self .web_driver .find_element (
102+ by = By .CLASS_NAME , value = 'select2-results__option'
103+ ).click ()
104+ self .web_driver .find_element (by = By .NAME , value = 'mac_address' ).send_keys (
98105 '11:22:33:44:55:66'
99106 )
100- self .web_driver .find_element_by_xpath (
101- '//*[@id="config-group"]/fieldset/div[2]/a'
107+ self .web_driver .find_element (
108+ by = By . XPATH , value = '//*[@id="config-group"]/fieldset/div[2]/a'
102109 ).click ()
103110
104111 try :
@@ -110,11 +117,11 @@ def test_create_new_device(self):
110117 except TimeoutException :
111118 self .fail ('Default template clickable timed out' )
112119
113- required_template_element = self .web_driver .find_element_by_xpath (
114- f'//*[@value="{ required_template .id } "]'
120+ required_template_element = self .web_driver .find_element (
121+ by = By . XPATH , value = f'//*[@value="{ required_template .id } "]'
115122 )
116- default_template_element = self .web_driver .find_element_by_xpath (
117- f'//*[@value="{ default_template .id } "]'
123+ default_template_element = self .web_driver .find_element (
124+ by = By . XPATH , value = f'//*[@value="{ default_template .id } "]'
118125 )
119126 self .assertEqual (required_template_element .is_enabled (), False )
120127 self .assertEqual (required_template_element .is_selected (), True )
@@ -124,9 +131,9 @@ def test_create_new_device(self):
124131 self .web_driver .execute_script (
125132 'document.querySelector("#ow-user-tools").style.display="none"'
126133 )
127- self .web_driver .find_element_by_name ( '_save' ).click ()
134+ self .web_driver .find_element ( by = By . NAME , value = '_save' ).click ()
128135 self .assertEqual (
129- self .web_driver .find_elements_by_class_name ( 'success' )[0 ].text ,
136+ self .web_driver .find_elements ( by = By . CLASS_NAME , value = 'success' )[0 ].text ,
130137 'The Device “11:22:33:44:55:66” was added successfully.' ,
131138 )
132139
@@ -144,14 +151,17 @@ def test_unsaved_changes(self):
144151 self .fail ('Unsaved changes alert displayed without any change' )
145152
146153 with self .subTest ('Alert should be displayed after making changes' ):
147- self .web_driver .find_element_by_name ('name' ).send_keys ('new.device.name' )
154+ self .web_driver .find_element (by = By .NAME , value = 'name' ).send_keys (
155+ 'new.device.name'
156+ )
148157 self .web_driver .refresh ()
149158 try :
150159 WebDriverWait (self .web_driver , 1 ).until (EC .alert_is_present ())
151160 except TimeoutException :
152161 self .fail ('Timed out wating for unsaved changes alert' )
153162 else :
154- self .web_driver .switch_to_alert ().accept ()
163+ alert = Alert (self .web_driver )
164+ alert .accept ()
155165
156166 def test_multiple_organization_templates (self ):
157167 shared_required_template = self ._create_template (
@@ -224,10 +234,10 @@ def test_change_config_backend(self):
224234 self .open (
225235 reverse ('admin:config_device_change' , args = [device .id ]) + '#config-group'
226236 )
227- self .web_driver .find_element_by_xpath ( f'//*[@value="{ template .id } "]' )
237+ self .web_driver .find_element ( by = By . XPATH , value = f'//*[@value="{ template .id } "]' )
228238 # Change config backed to
229239 config_backend_select = Select (
230- self .web_driver .find_element_by_name ( 'config-0-backend' )
240+ self .web_driver .find_element ( by = By . NAME , value = 'config-0-backend' )
231241 )
232242 config_backend_select .select_by_visible_text ('OpenWISP Firmware 1.x' )
233243 try :
@@ -263,13 +273,14 @@ def test_template_context_variables(self):
263273 )
264274 except TimeoutException :
265275 self .fail ('Timed out wating for configuration variabled to get loaded' )
266- self .web_driver .find_element_by_xpath (
267- '//*[@id="main-content"]/div[2]/a[3]'
276+ self .web_driver .find_element (
277+ by = By . XPATH , value = '//*[@id="main-content"]/div[2]/a[3]'
268278 ).click ()
269279 try :
270280 WebDriverWait (self .web_driver , 2 ).until (EC .alert_is_present ())
271281 except TimeoutException :
272282 pass
273283 else :
274- self .web_driver .switch_to_alert ().accept ()
284+ alert = Alert (self .web_driver )
285+ alert .accept ()
275286 self .fail ('Unsaved changes alert displayed without any change' )
0 commit comments