From e1a26a5f6728761f8b87b78822ad06b1eb716170 Mon Sep 17 00:00:00 2001 From: Joe Hamilton Date: Wed, 10 May 2017 11:18:43 -0700 Subject: [PATCH] Added integration test tabs -> spaces --- test/IntegrationTest.java | 51 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 test/IntegrationTest.java diff --git a/test/IntegrationTest.java b/test/IntegrationTest.java new file mode 100644 index 0000000..a227a0b --- /dev/null +++ b/test/IntegrationTest.java @@ -0,0 +1,51 @@ +import dagger.MyApplicationLoader; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; +import play.Application; +import play.ApplicationLoader; +import play.Environment; +import play.mvc.Http; +import play.mvc.Result; +import play.test.Helpers; + +import java.util.Arrays; +import java.util.List; +import java.util.TimeZone; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static play.test.Helpers.*; + +public class IntegrationTest { + + private static Application app; + + @BeforeClass + public static void setup() { + app = new MyApplicationLoader().load(ApplicationLoader.Context.create(Environment.simple())); + Helpers.start(app); + } + + @Test + public void testIndex() { + Http.RequestBuilder request = new Http.RequestBuilder(); + request.uri(controllers.routes.TimeController.index().url()); + // passing app in explicitly here is key since route() overloads without it use the deprecated + // static Application references + Result result = route(app, request); + assertEquals(result.status(), OK); + String content = contentAsString(result); + + List timezones = Arrays.asList(TimeZone.getAvailableIDs()); + for (String timezone : timezones) { + assertTrue(content.contains(timezone)); + } + } + + @AfterClass + public static void teardown() { + Helpers.stop(app); + } + +}