Как подделать http в новом окне, которое открывается приложением в тесте E2E?
Я использую Protractor и ng-mock-e2e для тестирования моего приложения AngularJS. Когда я проверяю страницу (B), которая открывается со страницы (A) с помощью window.open, я надеюсь, что $http на странице (B) будет подделан $httpBackend, но, похоже, он недоступен.
Мой код похож
const ngMockE2E = require('ng-mock-e2e');
const {$httpBackend} = ngMockE2E;
describe('example with ngMockE2E', () => {
beforeEach(() => {
ngMockE2E.addMockModule();
ngMockE2E.addAsDependencyForModule('appName');
ngMockE2E.embedScript('bower_components/angular-mocks/angular-mocks.js');
});
afterEach(() => {
ngMockE2E.clearMockModules();
});
it('It works!', () => {
$httpBackend.when('GET', 'heading').respond('It works!');
browser.get('/pageA');
element(by.id('openB')).click(); // *(1)
});
*(1) Это откроет страницу B в новом окне (через window.open ()), и pageB получит доступ к http:/heading в своем init.
Как я могу подделать http в новом окне, которое открывается приложением. Подделка Http доступна, когда я открываю страницу B со страницы A в том же окне.