Учитывая, интерфейсный компонент, который импортирует RestAngular, объявляет его в CTOR и использует его в ngOnInit, как показано здесь:
import { Restangular } from 'ngx-restangular'
constructor(
private Restangular: Restangular,
private ChangeDetectorRef: ChangeDetectorRef,
) { }
ngOnInit() {
this.Restangular.all("Person")
.all("Kind")
.getList()
.subscribe(pTypes => {
this.personTypes = pTypes;
});
}
Приведенный выше код отлично работает, когда он подается.
Я пытаюсь заставить Жасмин создать этот класс, который задохнулся от Restangular. Поэтому я включил следующие провайдеры следующим образом:
beforeEach(async () => {
TestBed.configureTestingModule({
providers:[Restangular, RestangularHttp, HttpBackend],
Похоже, это исправило все зависимости Restrict, но теперь я вижу это:
Теперь я вижу это из-за ошибки TypeError: this.http.handle не является функцией
Я не понимаю, почему на стороне Жасмин я все-таки должен предоставить эти зависимости, разве интерфейсный компонент не справляется с ними просто отлично? Почему жасмин не создает экземпляр интерфейса, как это делает Angular? По-видимому, это вызвано тем, что «реальный» экземпляр Restangular не вводится.