Karma (AKA Testacular) rely on ng-app directive?

After spending a day and a half of code battles, i've realized that the e2e tests hanged because i've bootstraped manually and not using ng-app directive

first, FYI.

second, any idea why? How can it be fixed?

thanks

Lior

-- EDIT: here're two plunks that show it, using phone-cat tutorial example:

works in both browser and e2e: http://plnkr.co/edit/AfLsug1LRi0euKf7TWJa

works interactively in browser, doesnt work in e2e runner: http://plnkr.co/edit/20OeZ5eV2ZbzgS1qDYfr

Scenario runner appears to need to get a hold of ng-app (for the $injector). I adapted the fix identified here by Vojta Jína and it worked for me.

$(function() {
   var myApp = $('#appId'); // Use whatever selector is appropriate here. 
   angular.bootstrap(myApp, [modules]); // modules is optional - see http://docs.angularjs.org/api/angular.bootstrap
   myApp.addClass('ng-app'); // Adds the required ng-app
});

In addition, you may need to put a pause or wait in your beforeAll to allow enough time for manual bootstrapping to complete, e.g.,

beforeEach(function() {
   browser().navigateTo('../../index.html');
   pause();
});

This fix works but it's not that satisfactory imho. Is there any way to get rid of the pause/wait?