       expect(dispatcher.dispose).to.be.a 'function'
       dispatcher.dispose()
 
-      proto = Test1Controller.prototype
-      initialize = sinon.spy proto, 'initialize'
-      mediator.publish 'matchRoute', route1, params, routeOptions
-
-      test1Loaded ->
+      initialize = sinon.spy Test1Controller.prototype, 'initialize'
+      mediator.publish 'matchRoute', route1, params, routeOptions
+
+      loadTest1ControllerAndExecute ->
         expect(initialize).was.notCalled()
 
         expect(dispatcher.disposed).to.be true

      refreshParams()
      mediator.publish 'matchRoute', route1, params, routeOptions

      test1Loaded ->
        expect(initialize).was.calledWith params, 'test1'
        expect(action).was.calledWith params, 'test1'
        expect(historyURL).was.calledWith params

      action     = sinon.spy proto, 'show'
      historyURL = sinon.spy proto, 'historyURL'

      _(2).times ->
        mediator.publish '!startupController', 'test1', 'show', params, routeOptions

      loadTest1ControllerAndExecute ->
        expect(initialize).was.calledWith params, 'test1'
        expect(action).was.calledWith params, 'test1'
        expect(historyURL).was.calledWith params
