/sitebricks-acceptance-tests/src/test/java/com/google/sitebricks/acceptance/page/I18nPage.java
http://github.com/dhanji/sitebricks · Java · 45 lines · 37 code · 8 blank · 0 comment · 0 complexity · 4b8534e0d5e8ff839631bfabef421d31 MD5 · raw file
- package com.google.sitebricks.acceptance.page;
- import com.google.inject.Guice;
- import com.google.sitebricks.acceptance.util.AcceptanceTest;
- import com.google.sitebricks.client.Web;
- import com.google.sitebricks.client.transport.Text;
- import org.dom4j.DocumentException;
- import org.dom4j.DocumentHelper;
- import java.util.Map;
- public class I18nPage {
- private final String content;
- public static final String NAME = "Dhanji";
- public I18nPage(String content) {
- try {
- this.content = DocumentHelper.parseText(content)
- .selectSingleNode("//span['localizedMessage'][1]")
- .getText();
- } catch (DocumentException e) {
- throw new RuntimeException(e);
- }
- }
- public boolean hasHelloTo(String name) {
- return content.trim().equals("Hello there " + name + "!");
- }
- public boolean hasBonjourTo(String name) {
- return content.trim().equals("Bonjour misieu " + name + "!");
- }
- public static I18nPage openWithHeaders(Map<String, String> headers) {
- String content = Guice.createInjector()
- .getInstance(Web.class)
- .clientOf(AcceptanceTest.baseUrl() + "/i18n?name=" + NAME, headers)
- .transports(String.class)
- .over(Text.class)
- .get()
- .toString();
- return new I18nPage(content);
- }
- }