       expect(r.args.length).toEqual(0)
 
 
-  describe "Routing and Controllers", ->
-    it "Hash Routing", ->
+  describe "Routing and Controllers for Hash Routing and Event Routing", ->
+
+    postValue = errorValue = actionId = actionClass = titleValue = null
+    emptyValue = postXValue = eventCustomValue = nonEmptyValue = null
+    beforeEach (done) ->
       window.location.hash = ""
-      error = null
       Controller =
         error: (current) ->
-          error = current
-          #expect(current).toEqual("#/error")
+          errorValue = current
 
         action: (e, id, klass) ->
-          expect(id).toEqual("my-div")
-          expect(klass).toEqual("abc")
+          actionId = id
+          actionClass = klass
 
         title: (title) ->
-          expect(title).toEqual("abc")
+          titleValue = "abc"
+
 
       r =
-        "#/": () -> expect(arguments.length).toEqual(0)
+        "#/": () -> emptyValue = arguments.length
         "#/post/[0-9]+" : (id) ->
-          expect(arguments.length).toEqual(1)
-          expect(id).toEqual(12)
+          postValue = id
         "#/post/:title" : {controller: Controller, action: "title"}
-        "#/post/x/*": () -> expect(arguments.length).toEqual(3)
-        "#/static" : () -> expect(arguments.length).toEqual(0)
+        "#/post/x/*": () -> nonEmptyValue = arguments.length
+        "#/static" : () -> postXValue = arguments.length
         404: {controller: Controller, action: "error"}
-        "event:custom" : (e, p0) -> expect(p0).toEqual(0)
+        "event:custom" : (e, p0) -> eventCustomValue = p0
         "click #my-div": {controller: Controller, action: "action", data: ["id", "class"]}
 
       j = new JQueryAdapter()

        links = $("#links a")
        for l in links
          $(l).trigger("click")

        2800
      )





        2000
      )
      setTimeout(
        () ->
          window.location.hash = ""
          done()
        2400
      )

