Мошенническое обещание возврата функции с callFake не входит затем () - PullRequest
0 голосов
/ 26 февраля 2019

У меня те же вызовы методов, и я пытаюсь написать тесты для имитации MyService.getSoemthing в methodB ().Тем не менее, это, похоже, не работает ..

methodA(): any {
    methodB().then(() => {
        do something...
    })
}

methodB(): ng.IPromise<void> {
    return MyService.getSomething(a,b,c,d,e).then((result) => {
        ...does something with result...
        doesn't returning anything
    });
}

// With MyServiceMock injected
spyOn(MyServiceMock, 'getSomething').and.callFake(() => {
    return $q.resolve(result); // result is a variable that has already been init
});

or 

spyOn(MyServiceMock, 'getSomething').and.callFake((a,b,c,d,e) => {
    return $q.resolve(result); // result is a variable that has already been init
});

// then I call my methodA and ..
methodA();

Это просто не будет работать .. Я могу отлаживать до разрешения макета, он разрешает обещание, но никогда не заканчиваетсявнутри моего ** ... что-то делает с результатом ... **

Есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...