SoftwareQuality/Homework12/src/test/java/UniMarburgDp12Page.java
2025-01-30 16:06:35 +01:00

46 lines
1.8 KiB
Java

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import java.util.Map;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class UniMarburgDp12Page extends UniMarburgPage {
public static final String DP_12_TITLE = "Philipps-Universität Marburg - Mathematik und Informatik";
private static final Map<String, By> topics = Map.of(
"Department",
By.xpath("//div[@id=\'section-navigation\']/div/ul/li[2]/a"),
"Studying",
By.xpath("//div[@id=\'section-navigation\']/div/ul/li[3]/a"),
"Research",
By.xpath("//div[@id=\'section-navigation\']/div/ul/li[4]/a"),
"Research groups",
By.xpath("//div[@id=\'section-navigation\']/div/ul/li[5]/a")
);
private static final By MODULES_AND_COURSES_SELECTOR = By.cssSelector("li:nth-child(4) > a > div");
private static final By MODULE_GUIDE_SELECTOR = By.cssSelector(".link-text-list:nth-child(6) .diazoadded");
public UniMarburgDp12Page(WebDriver driver) {
super(driver);
}
public void checkMenuItems() {
for (String item : topics.keySet()) {
assertEquals(item, driver.findElement(topics.get(item)).getText());
}
}
public void checkAndSelectModulesAndCourses() {
driver.findElement(topics.get("Studying")).click();
assertEquals("Modules & Courses\nModules and Courses", driver.findElement(MODULES_AND_COURSES_SELECTOR).getText());
driver.findElement(MODULES_AND_COURSES_SELECTOR).click();
}
public ModuleHandbookPage checkAndOpenModuleGuide() {
assertEquals(("directly to the online module guide"), driver.findElement(MODULE_GUIDE_SELECTOR).getText());
driver.findElement(MODULE_GUIDE_SELECTOR).click();
return new ModuleHandbookPage(driver);
}
}