У меня есть это угловое веб-приложение. Я хочу запустить тесты e2e на макете отдыхающего API. Я могу достаточно просто перенести мои сетевые вызовы на остальные API, но аутентификация - это сторонний провайдер (cognito с использованием ampify). Мысль заглушить службу Angular, которая оборачивает аутентификацию.
В Angular у меня есть
@Injectable({
providedIn: 'root'
})
export class AuthenticationService {
some methods
isSignedIn(): Observable<boolean> {
...
}
}
Я хочу заглушить метод isSignedIn. Моя первая попытка выглядит примерно так:
import {AuthenticationService} from "../../src/app/authentication.service";
import {BehaviorSubject} from "rxjs";
context('albums', () => {
it('get albums', () => {
cy.stub(AuthenticationService,'isSignedIn').returns(new BehaviorSubject(true));
}
}
Cypress / Chrome потом жалуется, что не может найти AuthenticationService в этом месте. Как мне это решить.