         url: '/home/baz/fifth'
         data:
           transition: 'slide'
+      .state 'alien',
+        url: '/crazy/route'
     return
 
   viewService = null
   state = null
   scope = null
 
-  home = second = third = fourth = fifth = null
+  home = second = third = fourth = fifth = alien = null
 
 
   beforeEach inject ($rootScope, bpView, $state) ->

    third = state.get 'third'
    fourth = state.get 'fourth'
    fifth = state.get 'fifth'

  describe 'listen', ->
    it 'should listen to events', ->

  describe 'getDirection', ->
    it 'should detect "normal"', ->
      expect(viewService.getDirection home, second).toBe 'normal'
      expect(viewService.getDirection second, third).toBe 'normal'

    it 'should detect "reverse"', ->
      expect(viewService.getDirection second, home).toBe 'reverse'

    it 'should detect no direction', ->
      expect(viewService.getDirection fourth, fifth).toBe null
      expect(viewService.getDirection third, fifth).toBe null
      expect(viewService.getDirection {url: '^'}).toBe null
      expect(viewService.getDirection alien, second).toBe null
      expect(viewService.getDirection alien, fifth).toBe null
      expect(viewService.getDirection third, fifth).toBe null
      expect(viewService.getDirection home, alien).toBe null

  describe 'getType', ->
    it 'should detect "normal" type', ->
