From 8c15eebf1fb2ce54051409269dd7715a5522bda0 Mon Sep 17 00:00:00 2001 From: xander Date: Fri, 4 Apr 2025 15:55:11 +0100 Subject: [PATCH] Started work on test for posting --- src/test/TestPoster.java | 47 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/test/TestPoster.java diff --git a/src/test/TestPoster.java b/src/test/TestPoster.java new file mode 100644 index 0000000..f4dcecf --- /dev/null +++ b/src/test/TestPoster.java @@ -0,0 +1,47 @@ +package test; + +import main.ConfigureDriver; +import main.DomainGrabber; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.By; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.CsvFileSource; +import static org.junit.jupiter.api.Assertions.assertTrue; + +public class TestPoster { + private static final String domain = DomainGrabber.getDomain(); + private static final String LOGIN_PAGE = "https://"+domain+"/wp-login.php"; + private static final String USERNAME_BOX_ID = "user_login"; + private static final String PASSWORD_BOX_ID = "user_pass"; + private static final String LOGIN_BUTTON_ID = "wp-submit"; + private static final String LOGGGEDIN_URL = "https://"+domain+"/wp-admin/"; + private static final String POST_BUTTON_ID = "wp-admin-bar-new-content"; + private static final String POST_URL = "https://"+domain+"/wp-admin/post-new.php"; + @ParameterizedTest + @CsvFileSource(resources = "/csv/built/credentials_permissions.csv", numLinesToSkip = 0) + + public void testPostEditDelete(String role, String usernameText, String passwordText) { + WebDriver driver = ConfigureDriver.configureDriver(); + driver.manage().window().maximize(); + driver.get(LOGIN_PAGE); + + WebElement username = driver.findElement(By.id(USERNAME_BOX_ID)); + WebElement password = driver.findElement(By.id(PASSWORD_BOX_ID)); + WebElement login = driver.findElement(By.id(LOGIN_BUTTON_ID)); + + username.sendKeys(usernameText); + System.out.println("Testing "+usernameText); + password.sendKeys(passwordText); + login.click(); + + assertTrue(driver.getCurrentUrl().startsWith(LOGGGEDIN_URL)); + boolean canPost; + if (role.equals("author")) { + canPost = true; + } + WebElement post_button = driver.findElement(By.id(POST_BUTTON_ID)); + } + //driver.quit(); + } +} \ No newline at end of file