Skip to content
Snippets Groups Projects
Commit f923bd46 authored by adityab3's avatar adityab3
Browse files

Added Selenium tests for valid and invalid patient preregistration

parent de3b7668
No related branches found
No related tags found
No related merge requests found
...@@ -43,7 +43,7 @@ function fillLoginFields(u,p) { ...@@ -43,7 +43,7 @@ function fillLoginFields(u,p) {
<br /><br /> <br /><br />
<a style="font-size: 80%;" href="/iTrust/util/resetPassword.jsp">Reset Password</a> <a style="font-size: 80%;" href="/iTrust/util/resetPassword.jsp">Reset Password</a>
<a> </a> <a> </a>
<a style="font-size: 80%;" href="/iTrust/util/PreRegisterPatient.jsp">Pre-Register</a> <a style="font-size: 80%;" href="/iTrust/util/PreRegisterPatient.jsp" id="preregister_link">Pre-Register</a>
</form> </form>
<% <%
......
...@@ -194,7 +194,7 @@ to recover the password.</div> ...@@ -194,7 +194,7 @@ to recover the password.</div>
<br /> <br />
<input type="submit" style="font-size: 16pt; font-weight: bold;" value="Patient Pre-Register"> <input type="submit" style="font-size: 16pt; font-weight: bold;" value="Patient Pre-Register" id="submit_preregister">
</form> </form>
<br /> <br />
</div> </div>
......
package edu.ncsu.csc.itrust.selenium;
import org.openqa.selenium.*;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.htmlunit.HtmlUnitDriver;
import edu.ncsu.csc.itrust.enums.TransactionType;
public class PreRegisterPatientTest extends iTrustSeleniumTest {
protected WebDriver driver;
@Override
protected void setUp() throws Exception {
super.setUp();
gen.clearAllTables();
gen.standardData();
driver = new HtmlUnitDriver();
driver.manage().timeouts().implicitlyWait(DEFAULT_TIMEOUT, TimeUnit.SECONDS);
}
private void goToPreRegister() {
// Go to preregister page
driver.get(ADDRESS);
driver.findElement(By.id("preregister_link")).click();
}
public void testPreRegisterPatientButton() throws Exception {
goToPreRegister();
assertEquals("iTrust - PreRegister Patient", driver.getTitle());
}
public void testPreRegisterPatientSuccessRequired() throws Exception {
goToPreRegister();
// Fill the form
driver.findElement(By.xpath("//input[@name='firstName']")).sendKeys("fname");
driver.findElement(By.xpath("//input[@name='lastName']")).sendKeys("lname");
driver.findElement(By.xpath("//input[@name='email']")).sendKeys("name@email.com");
driver.findElement(By.xpath("//input[@name='password']")).sendKeys("Password123");
driver.findElement(By.xpath("//input[@name='verifyPassword']")).sendKeys("Password123");
// Submit
driver.findElement(By.id("submit_preregister")).click();
assertTrue(driver.findElement(By.xpath("//body")).getText().contains("New Pre-registered Patient Information"));
}
public void testMissingElements() {
goToPreRegister();
// Check that all elements have the required attribute
assertTrue(
Boolean.parseBoolean(driver.findElement(By.xpath("//input[@name='firstName']")).getAttribute("required"))
&& Boolean.parseBoolean(driver.findElement(By.xpath("//input[@name='lastName']")).getAttribute("required"))
&& Boolean.parseBoolean(driver.findElement(By.xpath("//input[@name='email']")).getAttribute("required"))
&& Boolean.parseBoolean(driver.findElement(By.xpath("//input[@name='password']")).getAttribute("required"))
&& Boolean.parseBoolean(driver.findElement(By.xpath("//input[@name='verifyPassword']")).getAttribute("required"))
);
// Make sure that the form does not submit
driver.findElement(By.xpath("//input[@name='firstName']")).sendKeys("");
driver.findElement(By.xpath("//input[@name='lastName']")).sendKeys("lname");
driver.findElement(By.xpath("//input[@name='email']")).sendKeys("name@email.com");
driver.findElement(By.xpath("//input[@name='password']")).sendKeys("Password123");
driver.findElement(By.xpath("//input[@name='verifyPassword']")).sendKeys("Password123");
driver.findElement(By.id("submit_preregister")).click();
assertFalse(driver.findElement(By.xpath("//body")).getText().contains("New Pre-registered Patient Information"));
}
public void testInvalidName() {
goToPreRegister();
driver.findElement(By.xpath("//input[@name='firstName']")).sendKeys("123abc");
driver.findElement(By.xpath("//input[@name='lastName']")).sendKeys("lname");
driver.findElement(By.xpath("//input[@name='email']")).sendKeys("name@email.com");
driver.findElement(By.xpath("//input[@name='password']")).sendKeys("Password123");
driver.findElement(By.xpath("//input[@name='verifyPassword']")).sendKeys("Password123");
driver.findElement(By.id("submit_preregister")).click();
assertTrue(driver.findElement(By.xpath("//body")).getText().contains("This form has not been validated correctly"));
}
public void testInvalidEmail() {
goToPreRegister();
driver.findElement(By.xpath("//input[@name='firstName']")).sendKeys("fname");
driver.findElement(By.xpath("//input[@name='lastName']")).sendKeys("lname");
driver.findElement(By.xpath("//input[@name='email']")).sendKeys("not-an-email");
driver.findElement(By.xpath("//input[@name='password']")).sendKeys("Password123");
driver.findElement(By.xpath("//input[@name='verifyPassword']")).sendKeys("Password123");
driver.findElement(By.id("submit_preregister")).click();
assertTrue(driver.findElement(By.xpath("//body")).getText().contains("This form has not been validated correctly"));
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment