changeset 19:5e03668972ea

Utest example
author Adam Chlipala <adam@chlipala.net>
date Thu, 06 Jan 2011 15:25:11 -0500
parents dd8eb53da51b
children 2342d9baa0df
files tests/test.urp tests/utest.ur tests/utest.urp tests/utest.urs
diffstat 4 files changed, 59 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/tests/test.urp	Thu Jan 06 15:17:15 2011 -0500
+++ b/tests/test.urp	Thu Jan 06 15:25:11 2011 -0500
@@ -1,3 +1,4 @@
+path META=../../meta
 library ../src/ur
 rewrite all Test/*
 database dbname=openid
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/utest.ur	Thu Jan 06 15:25:11 2011 -0500
@@ -0,0 +1,46 @@
+style inputs
+
+structure U = OpenidUser.Make(struct
+                                  con cols = [Nam = string]
+
+                                  val sessionLifetime = 3600
+                                  val afterLogout = bless "/main"
+                                  val secureCookies = False
+                                  val association = Openid.Stateful {AssociationType = Openid.HMAC_SHA256,
+                                                                     AssociationSessionType = Openid.NoEncryption}
+                                  val realm = None
+
+                                  val creationState =
+                                      n <- source "";
+                                      return {Nam = n}
+                                      
+                                  fun render r = <xml>
+                                    <tr> <th class={inputs}>Name:</th> <td><ctextbox source={r.Nam}/></td> </tr>
+                                  </xml>
+
+                                  fun tabulate r =
+                                      n <- signal r.Nam;
+                                      return {Nam = n}
+
+                                  fun choose _ r = return r
+
+                                  val formClass = inputs
+                              end)
+
+fun wrap title body =
+    userStuff <- U.main wrap;
+    return <xml><head>
+      <title>{[title]}</title>
+    </head><body>
+      {userStuff}
+
+      <h1>{[title]}</h1>
+
+      {body}
+    </body></xml>
+
+fun main () =
+    whoami <- U.current;
+    wrap "Main page" (case whoami of
+                          None => <xml>I don't think you're logged in.</xml>
+                        | Some whoami => <xml>Apparently you are <b>{[whoami]}</b>!</xml>)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/utest.urp	Thu Jan 06 15:25:11 2011 -0500
@@ -0,0 +1,11 @@
+path META=../../meta
+library ../src/ur
+rewrite all Utest/*
+database dbname=openid
+sql utest.sql
+allow url http://*
+allow url https://*
+allow url /*
+prefix http://localhost:8080/
+
+utest
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/utest.urs	Thu Jan 06 15:25:11 2011 -0500
@@ -0,0 +1,1 @@
+val main : unit -> transaction page