summaryrefslogtreecommitdiff
path: root/cask/test/src/test
diff options
context:
space:
mode:
authorLi Haoyi <haoyi.sg@gmail.com>2018-07-26 13:59:36 +0800
committerLi Haoyi <haoyi.sg@gmail.com>2018-07-26 13:59:36 +0800
commitaaae392f2534fc0c377b81f1a35a6d5b86f231f2 (patch)
tree4a7a8308a239a99e9bc7b8c69d74e9b31371bf7c /cask/test/src/test
parent1e32473bdcac72fda83225c6668a25c015652488 (diff)
downloadcask-aaae392f2534fc0c377b81f1a35a6d5b86f231f2.tar.gz
cask-aaae392f2534fc0c377b81f1a35a6d5b86f231f2.tar.bz2
cask-aaae392f2534fc0c377b81f1a35a6d5b86f231f2.zip
Add more Decorated tests
Diffstat (limited to 'cask/test/src/test')
-rw-r--r--cask/test/src/test/cask/Decorated.scala23
-rw-r--r--cask/test/src/test/cask/ExampleTests.scala2
2 files changed, 23 insertions, 2 deletions
diff --git a/cask/test/src/test/cask/Decorated.scala b/cask/test/src/test/cask/Decorated.scala
index e20149a..3677203 100644
--- a/cask/test/src/test/cask/Decorated.scala
+++ b/cask/test/src/test/cask/Decorated.scala
@@ -3,15 +3,34 @@ import cask.model.ParamContext
object Decorated extends cask.MainRoutes{
- class myDecorator extends cask.Routes.Decorator {
+ class User{
+ override def toString = "[haoyi]"
+ }
+ class loggedIn extends cask.Routes.Decorator {
+ def getRawParams(ctx: ParamContext) = Right(Map("user" -> new User()))
+ }
+ class withExtra extends cask.Routes.Decorator {
def getRawParams(ctx: ParamContext) = Right(Map("extra" -> 31337))
}
- @myDecorator()
+ @withExtra()
@cask.get("/hello/:world")
def hello(world: String)(extra: Int) = {
world + extra
}
+ @loggedIn()
+ @cask.get("/internal/:world")
+ def internal(world: String)(user: User) = {
+ world + user
+ }
+
+ @withExtra()
+ @loggedIn()
+ @cask.get("/internal-extra/:world")
+ def internalExtra(world: String)(user: User)(extra: Int) = {
+ world + user + extra
+ }
+
initialize()
}
diff --git a/cask/test/src/test/cask/ExampleTests.scala b/cask/test/src/test/cask/ExampleTests.scala
index 50e9776..e5be3bf 100644
--- a/cask/test/src/test/cask/ExampleTests.scala
+++ b/cask/test/src/test/cask/ExampleTests.scala
@@ -88,6 +88,8 @@ object ExampleTests extends TestSuite{
}
'Decorated - test(Decorated){ host =>
requests.get(host + "/hello/woo").text() ==> "woo31337"
+ requests.get(host + "/internal/boo").text() ==> "boo[haoyi]"
+ requests.get(host + "/internal-extra/goo").text() ==> "goo[haoyi]31337"
}
}