                   ['up:history:restored', normalize('/two')]
                   ['up:history:restored', normalize('/one')]
                   ['up:history:restored', normalize('/two')]
+                  ['up:history:restored', normalize('/three')]
                 ]
 
-                history.forward()
-                u.setTimer 50, ->
-                  respond() # we need to respond since we've never requested /three with the popTarget
-
-                  expect(events).toEqual [
-                    ['up:history:pushed', normalize('/one')]
-                    ['up:history:pushed', normalize('/two')]
-                    ['up:history:pushed', normalize('/three')]
-                    ['up:history:restored', normalize('/two')]
-                    ['up:history:restored', normalize('/one')]
-                    ['up:history:restored', normalize('/two')]
-                    ['up:history:restored', normalize('/three')]
-                  ]
-
-                  done()
+                done()

              ['up:history:pushed', normalize('/two')]
              ['up:history:pushed', normalize('/three')]
              ['up:history:restored', normalize('/two')]
            ]

            history.back()
            u.setTimer 50, ->
              respond()


                ['up:history:pushed', normalize('/three')]
                ['up:history:restored', normalize('/two')]
                ['up:history:restored', normalize('/one')]
                ['up:history:restored', normalize('/two')]
              ]

              history.forward()
              u.setTimer 50, ->
                respond() # we need to respond since we've never requested /three with the popTarget

                expect(events).toEqual [
                  ['up:history:pushed', normalize('/one')]
