summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cask/src/cask/package.scala11
-rw-r--r--cask/test/src/test/cask/RedirectAbort.scala16
2 files changed, 27 insertions, 0 deletions
diff --git a/cask/src/cask/package.scala b/cask/src/cask/package.scala
new file mode 100644
index 0000000..f46dc8d
--- /dev/null
+++ b/cask/src/cask/package.scala
@@ -0,0 +1,11 @@
+package object cask {
+ def redirect(url: String) = Response(
+ "",
+ 301,
+ headers = Seq("Location" -> url)
+ )
+ def abort(code: Int) = Response(
+ "",
+ code
+ )
+}
diff --git a/cask/test/src/test/cask/RedirectAbort.scala b/cask/test/src/test/cask/RedirectAbort.scala
new file mode 100644
index 0000000..6a557d6
--- /dev/null
+++ b/cask/test/src/test/cask/RedirectAbort.scala
@@ -0,0 +1,16 @@
+package test.cask
+
+object RedirectAbort extends cask.MainRoutes{
+ @cask.get("/")
+ def index() = {
+ cask.redirect("/login")
+ }
+
+ @cask.get("/login")
+ def login() = {
+ cask.abort(401)
+ }
+
+ initialize()
+}
+