/sitebricks-acceptance-tests/src/test/java/com/google/sitebricks/acceptance/page/ConversionPage.java
http://github.com/dhanji/sitebricks · Java · 95 lines · 76 code · 19 blank · 0 comment · 12 complexity · c6ba22eadd491da48f0701cc0487a633 MD5 · raw file
- package com.google.sitebricks.acceptance.page;
-
-
- import java.net.URLEncoder;
- import java.text.SimpleDateFormat;
- import java.util.Calendar;
- import java.util.Date;
-
- import org.openqa.selenium.By;
- import org.openqa.selenium.WebDriver;
- import org.openqa.selenium.support.PageFactory;
-
- import com.google.sitebricks.acceptance.util.AcceptanceTest;
- import com.google.sitebricks.example.SitebricksConfig;
-
- public class ConversionPage {
- private WebDriver driver;
-
- public ConversionPage(WebDriver driver) {
- this.driver = driver;
- }
-
- public boolean hasDate(Date date) {
- SimpleDateFormat sdf = new SimpleDateFormat(SitebricksConfig.DEFAULT_DATE_TIME_FORMAT);
- String target = sdf.format(date);
-
- return driver.findElement(By.id("boundDate"))
- .getText()
- .contains(target);
- }
-
- public boolean hasCalendar(Calendar calendar) {
- SimpleDateFormat sdf = new SimpleDateFormat(SitebricksConfig.DEFAULT_DATE_TIME_FORMAT);
- String target = sdf.format(calendar.getTime());
-
- String node = driver.getPageSource();
- return driver.findElement(By.id("boundCalendar"))
- .getText()
- .contains(target);
- }
-
- public boolean hasMessage(String message) {
- return driver.findElement(By.id("boundText"))
- .getText()
- .contains(message);
- }
-
- public boolean hasDouble(Double dbl) {
- return driver.findElement(By.id("boundDouble"))
- .getText()
- .contains(dbl.toString());
- }
-
- public static ConversionPage open(WebDriver driver, Date date, Calendar calendar, String dateFormat, String msg, Double dbl) {
- SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
- StringBuilder sb = new StringBuilder ();
-
- if (date != null) {
- if (sb.length() > 0)
- sb.append("&");
- sb.append ("date=").append(encode(sdf.format(date)));
- }
-
- if (calendar != null) {
- if (sb.length() > 0)
- sb.append("&");
- sb.append ("calendar=").append(encode(sdf.format(calendar.getTime())));
- }
-
- if (msg != null) {
- if (sb.length() > 0)
- sb.append("&");
- sb.append ("message=").append(encode(msg));
- }
-
- if (msg != null) {
- if (sb.length() > 0)
- sb.append("&");
- sb.append ("dbl=").append(encode(dbl.toString()));
- }
-
- sb.insert(0,"/conversion?").insert(0, AcceptanceTest.baseUrl());
- driver.get(sb.toString());
- return PageFactory.initElements(driver, ConversionPage.class);
- }
-
- private static String encode(String s){
- try {
- return URLEncoder.encode(s,"UTF-8");
- }
- catch(Exception e){
- return s;
- }
- }
- }