Advertisement
eti19

Untitled

Mar 25th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.80 KB | None | 0 0
  1. from abc import abstractmethod
  2. from Util.locators import locators_home_page
  3.  
  4.  
  5. class BasePage:
  6. """This is the super class of all pages, all pages inherit from it"""
  7.  
  8. def __init__(self, driver):
  9. pass
  10. self.driver = driver
  11.  
  12. @property
  13. def get_dep_link(self):
  14. return self.driver.find_element_by_link_text(locators_home_page['loc_departments'])
  15.  
  16. def go_to_depart(self):
  17. self.get_dep_link.click()
  18. from Pages.DepartmentsPage import DepartmentsPage
  19. return DepartmentsPage
  20.  
  21. @property
  22. def get_team_link(self):
  23. return self.driver.find_element_by_link_text(locators_home_page['loc_team'])
  24.  
  25. def go_to_team(self):
  26. self.get_team_link.click()
  27. from Pages.TeamPage import TeamPage
  28. return TeamPage
  29.  
  30. @property
  31. def get_users_link(self):
  32. return self.driver.find_element_by_link_text(locators_home_page['loc_users'])
  33.  
  34. def go_to_users(self):
  35. self.get_users_link.click()
  36. from Pages.UsersPage import UsersPage
  37. return UsersPage
  38.  
  39. @property
  40. def get_reports_link(self):
  41. return self.driver.find_element_by_link_text(locators_home_page['loc_reports'])
  42.  
  43. def go_to_reports(self):
  44. self.get_reports_link.click()
  45. from Pages.ReportsPage import ReportsPage
  46. return ReportsPage
  47.  
  48. @property
  49. def get_oauth_link(self):
  50. return self.driver.find_element_by_link_text(locators_home_page['loc_oauth'])
  51.  
  52. def go_to_oauth(self):
  53. self.get_oauth_link.click()
  54. from Pages.OAuthPage import OAuthPage
  55. return OAuthPage
  56.  
  57. @abstractmethod
  58. def _validate_page(self):
  59. pass
  60.  
  61.  
  62. class InvalidPageException(Exception):
  63. """Throw this exception when you don't find the correct page"""
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement