2014-09-05 4 views
0

Чтобы проверить одну из моих услуг AngularJs, я писал на модульные тесты.Обещание, не ожидающее решения или отклонения

Вот пример кода, я придумал:

it('', function(done) { 
    aDocument.retrieveServiceFile(extractedFileFeature) 
     .then(function() { 
      expect(true).toBeFalsy(); 
     }, function() { 
      expect(true).toBeTruthy(); 
     }); 
    $rootScope.$digest(); 
    done(); 
} 

Я просто хочу, чтобы проверить, если Defer был разрешен или отклонить. Я не считаю, что это действительно удовлетворительно, так как ожидание явно не является явным.

Есть ли лучший способ, чтобы проверить, было ли отложенное отклонено или разрешено?

ответ

1

После некоторого совета я пошел на следующее решение, которое довольно легко читать и понимать!

promise.then(function() { 
    shouldHaveBeenHere = false; 
}, function() { 
    shouldHaveBeenHere = true; 
}).finally(function() { 
    expect(shouldHaveBeenHere).toBeTruthy(); 
}); 

 Смежные вопросы

  • Нет связанных вопросов^_^