Жасмин фиктивно для службы Http, сбой после обновления до Angular 9 - PullRequest
0 голосов
/ 20 апреля 2020

У нас есть служебный файл в angular, который похож на приведенный ниже

public fun1(param1?: string, param2?: string, param3?: boolean, origin?: string, observe?: 'body', reportProgress?: boolean): Observable<Array<A>>;
public fun1(param1?: string, param2?: string, param3?: boolean, origin?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<Array<A>>>;
public fun1(param1?: string, param2?: string, param3?: boolean, origin?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<Array<A>>>;
public fun1(param1?: string, param2?: string, param3?: boolean, origin?: string, observe: any = 'body', reportProgress: boolean = false ): Observable<any> {

     return this.httpClient.get<Array<A>>(`${this.basePath}/path`,
            {
                params: queryParameters,
                headers: headers,
                observe: observe,
                reportProgress: reportProgress
            }
        );
}

В файле spe c У меня есть шпион, которому я возвращаю ложные значения

spyOn(service,'fun1').and.returnValue(of([new A()]));

Но я получаю следующую ошибку -

error TS2345: Argument of type 'Observable<A[]>' is not assignable to parameter of type 'Observable<HttpEvent<A[]>>'.
  Type 'A[]' is not assignable to type 'HttpEvent<A[]>'.
    Property 'type' is missing in type 'A[]' but required in type 'HttpUserEvent<A[]>'

     node_modules/@angular/common/http/http.d.ts:3531:5
    3531     type: HttpEventType.User;

Примечание. Эта проблема возникает только после обновления с angular 6 до angular 9.

Любая помощь будет принята с благодарностью .

...