Как написать контрольный пример для функции, которая обрабатывает несколько вызовов API? - PullRequest
0 голосов
/ 18 марта 2019

Я изучаю контрольный пример в Жасмин и Карма, используя угловой 6. Я хотел бы понять, как написать контрольный пример для функции, которая обрабатывает несколько вызовов API (вложенный).Это означает, что ответ первого API отправляется на второй вызов API в виде параметров ...

Ниже приведен фрагмент кода :

Код функции компонента :

getData() {
 this.service.getDetails(null)
 .toPromise()
 .then((data) => {
   // Some calculation on the data object
   this.service.getDetails(data.value)
   .toPromise()
   .then((response) => {
      // Again some calculation.
   });
 });
}

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

В файле спецификации :

// In before each 
const data = jasmine.createSpyObject('service', '[getDetails]');
mockData = data.getDetails.and.returnValue(of(mockData));

//Actual test case 
expect(mockData).toHaveBeenCalledWith(null);
expect(mockData).tohaveBeenCalledWith(data); // For second API call.

Пожалуйста, предложите мне решение.

Я получаю следующую ошибку для вышеуказанного решения:

Spy to have been called with [[]] but actual calls were []
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...