Search code examples
jestjsrxjs

Mocking an observable with jest


I want to mock this

 getOverlayMessage(): Observable<any> {
    return this.overlaySubject.asObservable();
  }

I used this getOverlayMessage: jest.fn().mockResolvedValue but getting this error TypeError: this.messageService.getOverlayMessage(...).subscribe is not a function


Solution

  • mockResolvedValue is for returning a promise. Don't mock observables (in general don't mock what you don't own, and don't mock basic collections etc.), return a real one using of or from

    getOverlayMessage: of({});