ci: add site building and testing
[web/firmware-selector-openwrt-org.git] / tests / test_spa.py
1 from selenium import webdriver
2 from selenium.webdriver.support.ui import Select
3 from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
4
5
6 def init_driver():
7 driver = webdriver.Remote(
8 command_executor="http://localhost:4444/wd/hub",
9 desired_capabilities=DesiredCapabilities.FIREFOX,
10 )
11 return driver
12
13
14 def test_spa():
15 driver = init_driver()
16 driver.get("http://localhost:8000")
17 assert "OpenWrt Firmware Selector" in driver.title
18
19 model = driver.find_element_by_id("models")
20 model.clear()
21 model.send_keys("a7 v5")
22
23 models = driver.find_element_by_id("models-autocomplete-list")
24 assert "TP-Link Archer A7 v5" in models.text
25
26 message = driver.find_element_by_xpath("/html/body/div/div/p")
27 assert "use the input below to download firmware" in message.text
28
29 lang = Select(driver.find_element_by_id("language-selection"))
30
31 lang.select_by_visible_text("Deutsch")
32 message = driver.find_element_by_xpath("/html/body/div/div/p")
33 assert "benutze die Eingabe um die passende" in message.text
34
35 lang.select_by_value("ca")
36 message = driver.find_element_by_xpath("/html/body/div/div/p")
37 assert "servir el formulari de sota per seleccionar" in message.text
38
39 lang.select_by_visible_text("Polski")
40 message = driver.find_element_by_xpath("/html/body/div/div/p")
41 assert "pola poniżej żeby znaleźć obraz" in message.text