All files / tools/ReFlex.TrackingServer/ClientApp/src/shared/services webSocket.service.ts

45.45% Statements 5/11
42.85% Branches 3/7
0% Functions 0/2
44.44% Lines 4/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 253x 3x 3x         3x                                  
import { Injectable } from '@angular/core';
import { Observable, of, Subject } from 'rxjs';
import { webSocket, WebSocketSubject, WebSocketSubjectConfig } from 'rxjs/webSocket';
 
@Injectable({
  providedIn: 'root'
})
export class WebSocketService {
  private socket?: WebSocketSubject<MessageEvent>;
 
  public createSocket(cfg: WebSocketSubjectConfig<MessageEvent>): Subject<MessageEvent> {
    this.socket = webSocket(cfg);
 
    return this.socket;
  }
 
  public getResponseStream(): Observable<MessageEvent> {
    if (this.socket === undefined) {
      return of();
    }
 
    return this.socket.asObservable();
  }
}