Я пишу тесты Jasmine для моего приложения в Typescript и запускаю их через Resharper. Предполагается выполнить действие, если обработчик выдает исключение:
describe("Q Service Test", () => {
var q: ng.IQService;
var rootScope: ng.IRootScopeService;
beforeEach(inject(($q, $rootScope) => {
q = $q;
rootScope = $rootScope;
}));
it("Caught exceptions are handled properly", () => {
var state = 'ok';
q.when(1)
.then(() => {
throw new Error("test exception");
})
.catch(() => {
state = 'error';
});
rootScope.$digest();
expect(state).toBe('error');
});
});
Однако тест не выполнен:
Это странное поведение моей тестовой среды/инструментов, или я неправильно использую сам механизм обещаний?