diff options
Diffstat (limited to 'example/scalatags/app')
-rw-r--r-- | example/scalatags/app/src/Scalatags.scala | 15 | ||||
-rw-r--r-- | example/scalatags/app/test/src/ExampleTests.scala | 29 |
2 files changed, 44 insertions, 0 deletions
diff --git a/example/scalatags/app/src/Scalatags.scala b/example/scalatags/app/src/Scalatags.scala new file mode 100644 index 0000000..600f022 --- /dev/null +++ b/example/scalatags/app/src/Scalatags.scala @@ -0,0 +1,15 @@ +package app +import scalatags.Text.all._ +object Scalatags extends cask.MainRoutes{ + @cask.get("/") + def hello() = { + "<!doctype html>" + html( + body( + h1("Hello World"), + p("I am cow") + ) + ) + } + + initialize() +} diff --git a/example/scalatags/app/test/src/ExampleTests.scala b/example/scalatags/app/test/src/ExampleTests.scala new file mode 100644 index 0000000..8eccecf --- /dev/null +++ b/example/scalatags/app/test/src/ExampleTests.scala @@ -0,0 +1,29 @@ +package app +import io.undertow.Undertow + +import utest._ + +object ExampleTests extends TestSuite{ + def test[T](example: cask.main.BaseMain)(f: String => T): T = { + val server = Undertow.builder + .addHttpListener(8080, "localhost") + .setHandler(example.defaultHandler) + .build + server.start() + val res = + try f("http://localhost:8080") + finally server.stop() + res + } + + val tests = Tests { + 'Scalatags - test(Scalatags) { host => + val body = requests.get(host).text() + + assert( + body.contains("<h1>Hello World</h1>"), + body.contains("<p>I am cow</p>"), + ) + } + } +} |