1+ from utils .utils import BasePage
2+ from selenium .webdriver .common .by import By
3+
4+ class AuthPage (BasePage ):
5+ def __init__ (self , driver ):
6+ super ().__init__ (driver )
7+ self .back_btn = (By .ID , "back-btn" )
8+ self .login_input_username = (By .ID , "login-username" )
9+ self .login_input_password = (By .ID , "login-password" )
10+ self .login_btn = (By .CSS_SELECTOR , "#login-form button[type=submit]" )
11+ self .signup_input_username = (By .ID , "signup-username" )
12+ self .signup_input_password = (By .ID , "signup-password" )
13+ self .signup_btn = (By .CSS_SELECTOR , "#signup-form button[type=submit]" )
14+ self .switch_to_signup_link = (By .ID , "switch-to-signup" )
15+ self .switch_to_login_link = (By .ID , "switch-to-login" )
16+ self .login_info_element = (By .ID , "login-info" )
17+ self .signup_info_element = (By .ID , "signup-info" )
18+
19+ def get_title (self ):
20+ return self .driver .title
21+
22+ def click_back_btn (self ):
23+ self .wait_for_element (self .back_btn ).click ()
24+
25+ def type_login_username (self , username ):
26+ inp = self .wait_for_element (self .login_input_username )
27+ inp .clear ()
28+ inp .send_keys (username )
29+
30+ def type_login_password (self , password ):
31+ inp = self .wait_for_element (self .login_input_password )
32+ inp .clear ()
33+ inp .send_keys (password )
34+
35+ def type_signup_username (self , username ):
36+ inp = self .wait_for_element (self .signup_input_username )
37+ inp .clear ()
38+ inp .send_keys (username )
39+
40+ def type_signup_password (self , password ):
41+ inp = self .wait_for_element (self .signup_input_password )
42+ inp .clear ()
43+ inp .send_keys (password )
44+
45+ def click_switch_to_signup_link (self ):
46+ self .wait_for_element (self .switch_to_signup_link ).click ()
47+
48+ def click_switch_to_login_link (self ):
49+ self .wait_for_element (self .switch_to_login_link ).click ()
50+
51+ def get_login_info_element (self ):
52+ return self .wait_for_element (self .login_info_element )
53+
54+ def get_signup_info_element (self ):
55+ return self .wait_for_element (self .signup_info_element )
56+
57+ def click_login_btn (self ):
58+ self .wait_for_element (self .login_btn ).click ()
59+
60+ def click_signup_btn (self ):
61+ self .wait_for_element (self .signup_btn ).click ()
0 commit comments