Added new credential builder, moved credential builder to be it's own thing

This commit is contained in:
Xander 2025-04-04 14:08:53 +01:00
parent df878e63d3
commit 9ec211197d
4 changed files with 77 additions and 6 deletions

View file

@ -0,0 +1,2 @@
author,testuser,QUBsucks&UUisBetter
subscriber,subscriber,drewapicture(incrediblyfunnyjoke!)
1 author testuser QUBsucks&UUisBetter
2 subscriber subscriber drewapicture(incrediblyfunnyjoke!)

View file

@ -1,4 +1,51 @@
package main; package main;
import java.io.*;
public class CsvCleaner {
public class CsvBuilder {
private static String inputFile = "src/csv/credentials.csv";
public static void compileAll(String outputFile) {
try (BufferedReader reader = new BufferedReader(new FileReader(inputFile));
BufferedWriter writer = new BufferedWriter(new FileWriter("src/csv/built/"+outputFile+".csv"))) {
// Skip the first line
reader.readLine();
String line;
while ((line = reader.readLine()) != null) {
String[] parts = line.split(",", 2);
if (parts.length > 1) {
writer.write(parts[1]);
writer.newLine();
}
}
System.out.println("File processed successfully!");
} catch (IOException e) {
System.err.println("Error processing file: " + e.getMessage());
}
}
public static void compilePermissions(String outputFile) {
try (BufferedReader reader = new BufferedReader(new FileReader(inputFile));
BufferedWriter writer = new BufferedWriter(new FileWriter("src/csv/built/"+outputFile+".csv"))) {
// Skip the first line
reader.readLine();
String line;
while ((line = reader.readLine()) != null) {
writer.write(line+"\n");
}
System.out.println("File processed successfully!");
} catch (IOException e) {
System.err.println("Error processing file: " + e.getMessage());
}
}
public static void main(String[] args) {
CsvBuilder.compileAll("all_login_credentials");
CsvBuilder.compilePermissions("credentials_permissions");
}
} }

View file

@ -0,0 +1,21 @@
package main;
import org.junit.jupiter.params.shadow.com.univocity.parsers.csv.Csv;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
public class DomainGrabber {
public static String getDomain() {
try (InputStream inputStream = DomainGrabber.class.getResourceAsStream("/csv/credentials.csv");
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, StandardCharsets.UTF_8))) {
return reader.readLine();
} catch (IOException e) {
throw new RuntimeException("Failed to read domain from CSV", e);
}
}
}

View file

@ -1,6 +1,7 @@
package test; package test;
import main.ConfigureDriver; import main.ConfigureDriver;
import main.DomainGrabber;
import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement; import org.openqa.selenium.WebElement;
import org.openqa.selenium.By; import org.openqa.selenium.By;
@ -9,16 +10,16 @@ import org.junit.jupiter.params.provider.CsvFileSource;
import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertTrue;
public class TestLogin { public class TestLogin {
private static final String LOGIN_PAGE = "https://test.fusil.uk/wp-login.php"; 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 USERNAME_BOX_ID = "user_login";
private static final String PASSWORD_BOX_ID = "user_pass"; private static final String PASSWORD_BOX_ID = "user_pass";
private static final String LOGIN_BUTTON_ID = "wp-submit"; private static final String LOGIN_BUTTON_ID = "wp-submit";
private static final String EXPECTED_URL = "https://test.fusil.uk/wp-admin/"; private static final String EXPECTED_URL = "https://"+domain+"/wp-admin/";
@ParameterizedTest @ParameterizedTest
@CsvFileSource(resources = "/csv/all_login_credentials.csv", numLinesToSkip = 0) @CsvFileSource(resources = "/csv/built/all_login_credentials.csv", numLinesToSkip = 0)
void testLogin(String usernameText, String passwordText) { public void testLogin(String usernameText, String passwordText) {
WebDriver driver = ConfigureDriver.configureDriver(); WebDriver driver = ConfigureDriver.configureDriver();
driver.manage().window().maximize(); driver.manage().window().maximize();
driver.get(LOGIN_PAGE); driver.get(LOGIN_PAGE);