$ionicView.beforeLeave event not firing between states with a different abstract hierarchy

Hello everybody!
The $ionicView.beforeLeave (but even leave and afterLeave) registered inside a controller is not fired if $state.go(..) routes to a state with a different abstract hierarchy.
I’ve made an example: http://codepen.io/anon/pen/yNQWya
Just open the side menu, select ‘Check-in’ and wait 2 sec.
Navigation jumps in ‘Test’ but $ionicView.beforeLeave of CheckCtrl is not called.