У меня есть служба REST, сгенерированная openapi-generator-cli. Таким образом, сгенерированные сервисы выглядят так:
public list([...paramaters]): Observable<Array<CustomObject>>;
public list([...paramaters]): Observable<HttpResponse<Array<CustomObject>>>;
public list([...paramaters]): Observable<HttpEvent<Array<CustomObject>>>;
public list([...paramaters]): Observable<any> {
[generated service code here]
}
Моя проблема в том, что я хочу протестировать сервис с:
const httpServiceSpy = jasmine.createSpyObj('HttpCustomObjectService', [
'list',
'create',
]);
if('should', () => {
const listOfValues: CustomObject[] = [value];
httpService.list.and.returnValue(of(listOfValues));
})
Я не могу даже построить, потому что у меня всегда есть:
Argument of type 'Observable<CustomObject[]>' is not assignable to parameter of type 'Observable<HttpEvent<CustomObject[]>>'
Я могу написать:
httpService.list.and.returnValue(of(new HttpResponse({ body: listOfValues})));
, но остальная часть моего кода не работает, потому что не ожидает Observable >>, но Observable >
Есть ли способ выбрать тип возвращаемого значения returnValue из всех возможных автоматически генерируемых?