29 lines
No EOL
993 B
Python
29 lines
No EOL
993 B
Python
# pages/navigation.py
|
|
from selenium.webdriver.common.by import By
|
|
|
|
from pages.assistant import Assistant
|
|
from pages.base_page import BasePage
|
|
from pages.calculation_page import CalculationPage
|
|
from pages.results_page import ResultsPage
|
|
|
|
|
|
class Navigation(BasePage):
|
|
"""Handhabt die SPA-Navigation"""
|
|
|
|
# Locators für Navigationselemente
|
|
MENU_BUTTON = (By.CSS_SELECTOR, "button.menu-toggle")
|
|
NEW_CALCULATION_LINK = (By.CSS_SELECTOR, "a[href*='/assistant']")
|
|
RESULTS_LINK = (By.CSS_SELECTOR, "a[href*='/results']")
|
|
|
|
def start_calculation(self, base_url):
|
|
"""Navigiert zur Berechnungsseite"""
|
|
self.driver.get(base_url+"/assistant")
|
|
self.wait_for_spa_navigation("/assistant")
|
|
return Assistant(self.driver, self.wait)
|
|
|
|
|
|
def navigate_to_results(self):
|
|
"""Navigiert zur Ergebnisseite"""
|
|
self.click_button(*self.RESULTS_LINK)
|
|
self.wait_for_spa_navigation("/results")
|
|
return ResultsPage(self.driver, self.wait) |