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

Added Selenium tests for valid and invalid patient preregistration

parent a2d0b7ec
No related branches found
No related tags found
1 merge request!4Uc91.2
...@@ -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>
<% <%
......
...@@ -189,7 +189,7 @@ to recover the password.</div> ...@@ -189,7 +189,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