Implemented WebSockets for GUI2

Change-Id: I4776ce392b1e8e94ebee938cf7df22791a1e0b8f
diff --git a/web/gui2/src/main/webapp/tests/app/fw/util/lion.service.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/util/lion.service.spec.ts
index d471005..6535f07 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/util/lion.service.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/util/lion.service.spec.ts
@@ -15,27 +15,64 @@
  *
  */
 import { TestBed, inject } from '@angular/core/testing';
+import { of } from 'rxjs';
 
 import { LogService } from '../../../../app/log.service';
 import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
+import { ActivatedRoute, Params } from '@angular/router';
+import { FnService } from '../../../../app/fw/util/fn.service';
+import { GlyphService } from '../../../../app/fw/svg/glyph.service';
 import { LionService } from '../../../../app/fw/util/lion.service';
-import { WebSocketService } from '../../../../app/fw/remote/websocket.service';
+import { UrlFnService } from '../../../../app/fw/remote/urlfn.service';
+import { WSock } from '../../../../app/fw/remote/wsock.service';
+import { WebSocketService, WsOptions } from '../../../../app/fw/remote/websocket.service';
 
-class MockWebSocketService {}
+class MockActivatedRoute extends ActivatedRoute {
+    constructor(params: Params) {
+        super();
+        this.queryParams = of(params);
+    }
+}
+
+class MockWSock {}
+
+class MockGlyphService {}
+
+class MockUrlFnService {}
 
 /**
  * ONOS GUI -- Lion -- Localization Utilities - Unit Tests
  */
 describe('LionService', () => {
     let log: LogService;
+    let fs: FnService;
+    let ar: MockActivatedRoute;
+    let windowMock: Window;
 
     beforeEach(() => {
         log = new ConsoleLoggerService();
+        ar = new MockActivatedRoute({'debug': 'TestService'});
+        windowMock = <any>{
+            location: <any> {
+                hostname: '',
+                host: '',
+                port: '',
+                protocol: '',
+                search: { debug: 'true'},
+                href: ''
+            }
+        };
+        fs = new FnService(ar, log, windowMock);
 
         TestBed.configureTestingModule({
             providers: [LionService,
+                { provide: FnService, useValue: fs },
+                { provide: GlyphService, useClass: MockGlyphService },
                 { provide: LogService, useValue: log },
-                { provide: WebSocketService, useClass: MockWebSocketService },
+                { provide: UrlFnService, useClass: MockUrlFnService },
+                { provide: WSock, useClass: MockWSock },
+                { provide: WebSocketService, useClass: WebSocketService },
+                { provide: Window, useFactory: (() => windowMock ) },
             ]
         });
     });