Added app, tests, lint to BUCK file for web/gui2

Change-Id: I94912cb18f31db26971b66c9d851fb57f022df54
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/button.service.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/button.service.spec.ts
index d2bb5b9..cc8113b 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/button.service.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/button.service.spec.ts
@@ -15,19 +15,39 @@
  */
 import { TestBed, inject } from '@angular/core/testing';
 
+import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { ButtonService } from '../../../../app/fw/widget/button.service';
+import { FnService } from '../../../../app/fw/util/fn.service';
+import { IconService } from '../../../../app/fw/svg/icon.service';
+import { TooltipService } from '../../../../app/fw/widget/tooltip.service';
+
+class MockIconService {}
+
+class MockFnService {}
+
+class MockTooltipService {}
 
 /**
  * ONOS GUI -- Widget -- Button Service - Unit Tests
  */
 describe('ButtonService', () => {
-  beforeEach(() => {
-    TestBed.configureTestingModule({
-      providers: [ButtonService]
-    });
-  });
+    let log: LogService;
 
-  it('should be created', inject([ButtonService], (service: ButtonService) => {
-    expect(service).toBeTruthy();
-  }));
+    beforeEach(() => {
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [ButtonService,
+                { provide: LogService, useValue: log },
+                { provide: IconService, useClass: MockIconService },
+                { provide: FnService, useClass: MockFnService },
+                { provide: TooltipService, useClass: MockTooltipService },
+            ]
+        });
+    });
+
+    it('should be created', inject([ButtonService], (service: ButtonService) => {
+        expect(service).toBeTruthy();
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/chartbuilder.service.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/chartbuilder.service.spec.ts
index 6840fe3..dbb806d 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/chartbuilder.service.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/chartbuilder.service.spec.ts
@@ -15,19 +15,39 @@
  */
 import { TestBed, inject } from '@angular/core/testing';
 
+import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { ChartBuilderService } from '../../../../app/fw/widget/chartbuilder.service';
+import { LoadingService } from '../../../../app/fw/layer/loading.service';
+import { FnService } from '../../../../app/fw/util/fn.service';
+import { WebSocketService } from '../../../../app/fw/remote/websocket.service';
+
+class MockFnService {}
+
+class MockLoadingService {}
+
+class MockWebSocketService {}
 
 /**
  * ONOS GUI -- Widget -- Chart Builder Service - Unit Tests
  */
 describe('ChartBuilderService', () => {
-  beforeEach(() => {
-    TestBed.configureTestingModule({
-      providers: [ChartBuilderService]
-    });
-  });
+    let log: LogService;
 
-  it('should be created', inject([ChartBuilderService], (service: ChartBuilderService) => {
-    expect(service).toBeTruthy();
-  }));
+    beforeEach(() => {
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [ChartBuilderService,
+                { provide: LogService, useValue: log },
+                { provide: FnService, useClass: MockFnService },
+                { provide: LoadingService, useClass: MockLoadingService },
+                { provide: WebSocketService, useClass: MockWebSocketService },
+            ]
+        });
+    });
+
+    it('should be created', inject([ChartBuilderService], (service: ChartBuilderService) => {
+        expect(service).toBeTruthy();
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/flashchanges.directive.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/flashchanges.directive.spec.ts
index f301cfc..fd87910 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/flashchanges.directive.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/flashchanges.directive.spec.ts
@@ -13,40 +13,37 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-import { FlashChangesDirective } from '../../../../app/fw/widget/flashchanges.directive';
+import { TestBed, inject } from '@angular/core/testing';
 
 import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
+import { FlashChangesDirective } from '../../../../app/fw/widget/flashchanges.directive';
 import { FnService } from '../../../../app/fw/util/fn.service';
-import { ActivatedRoute, Router} from '@angular/router';
 
-class MockFunctionService extends FnService {
-    // Override things as necessary
-}
+class MockFnService {}
 
 /**
  * ONOS GUI -- Widget -- Table Flash Changes Directive - Unit Tests
  */
 describe('FlashChangesDirective', () => {
-    let fs: MockFunctionService;
     let log: LogService;
-    let ar: ActivatedRoute;
-    let directive: FlashChangesDirective;
 
     beforeEach(() => {
-        log = new LogService();
-        ar = new ActivatedRoute();
-        fs = new MockFunctionService(ar, log);
-        directive = new FlashChangesDirective(fs, log);
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [ FlashChangesDirective,
+                { provide: FnService, useClass: MockFnService },
+                { provide: LogService, useValue: log },
+            ]
+        });
     });
 
     afterEach(() => {
-        fs = null;
         log = null;
-        ar = null;
-        directive = null;
     });
 
-    it('should create an instance', () => {
+    it('should create an instance', inject([FlashChangesDirective], (directive: FlashChangesDirective) => {
         expect(directive).toBeTruthy();
-    });
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/list.service.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/list.service.spec.ts
index 0285417..7380270 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/list.service.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/list.service.spec.ts
@@ -15,19 +15,27 @@
  */
 import { TestBed, inject } from '@angular/core/testing';
 
+import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { ListService } from '../../../../app/fw/widget/list.service';
 
 /**
  * ONOS GUI -- Widget -- List Service - Unit Tests
  */
 describe('ListService', () => {
-  beforeEach(() => {
-    TestBed.configureTestingModule({
-      providers: [ListService]
-    });
-  });
+    let log: LogService;
 
-  it('should be created', inject([ListService], (service: ListService) => {
-    expect(service).toBeTruthy();
-  }));
+    beforeEach(() => {
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [ListService,
+                { provide: LogService, useValue: log },
+            ]
+        });
+    });
+
+    it('should be created', inject([ListService], (service: ListService) => {
+        expect(service).toBeTruthy();
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/sortableheader.directive.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/sortableheader.directive.spec.ts
index 7d15dfc..993430b 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/sortableheader.directive.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/sortableheader.directive.spec.ts
@@ -13,55 +13,45 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+import { TestBed, inject } from '@angular/core/testing';
+
+import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { SortableHeaderDirective } from '../../../../app/fw/widget/sortableheader.directive';
 import { IconService } from '../../../../app/fw/svg/icon.service';
 import { GlyphService } from '../../../../app/fw/svg/glyph.service';
-import { SvgUtilService } from '../../../../app/fw/svg/svgutil.service';
-import { LogService } from '../../../../app/log.service';
 import { FnService } from '../../../../app/fw/util/fn.service';
-import { ActivatedRoute, Router} from '@angular/router';
 
-class MockGlyphService extends GlyphService {
-    // Override things as necessary
-}
+class MockFnService {}
 
-class MockSvgUtilService extends SvgUtilService {
-    // Override things as necessary
-}
+class MockGlyphService {}
 
-class MockFunctionService extends FnService {
-    // Override things as necessary
-}
+class MockIconService {}
 
 /**
  * ONOS GUI -- Widget -- Table Sortable Header Directive - Unit Tests
  */
 describe('SortableHeaderDirective', () => {
-    let gs: MockGlyphService;
-    let sus: MockSvgUtilService;
-    let icon: IconService;
     let log: LogService;
-    let fs: MockFunctionService;
-    let ar: ActivatedRoute;
-    let directive: SortableHeaderDirective;
 
     beforeEach(() => {
-        log = new LogService();
-        ar = new ActivatedRoute();
-        fs = new MockFunctionService(ar, log);
-        gs = new MockGlyphService(log);
-        sus = new MockSvgUtilService(fs, log);
-        icon = new IconService(gs, log, sus);
-        directive = new SortableHeaderDirective(icon, log);
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [ SortableHeaderDirective,
+                { provide: FnService, useClass: MockFnService },
+                { provide: LogService, useValue: log },
+                { provide: GlyphService, useClass: MockGlyphService },
+                { provide: IconService, useClass: MockIconService },
+            ]
+        });
     });
 
     afterEach(() => {
         log = null;
-        icon = null;
-        directive = null;
     });
 
-    it('should create an instance', () => {
+    it('should create an instance', inject([SortableHeaderDirective], (directive: SortableHeaderDirective) => {
         expect(directive).toBeTruthy();
-    });
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/tablebuilder.service.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/tablebuilder.service.spec.ts
index fb4aac7..1126d28 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/tablebuilder.service.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/tablebuilder.service.spec.ts
@@ -15,19 +15,40 @@
  */
 import { TestBed, inject } from '@angular/core/testing';
 
+import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { TableBuilderService } from '../../../../app/fw/widget/tablebuilder.service';
+import { FnService } from '../../../../app/fw//util/fn.service';
+import { LoadingService } from '../../../../app/fw/layer/loading.service';
+import { WebSocketService } from '../../../../app/fw/remote/websocket.service';
+
+class MockFnService {}
+
+class MockLoadingService {}
+
+class MockWebSocketService {}
 
 /*
  ONOS GUI -- Widget -- Table Builder Service - Unit Tests
  */
 describe('TableBuilderService', () => {
-  beforeEach(() => {
-    TestBed.configureTestingModule({
-      providers: [TableBuilderService]
-    });
-  });
+    let log: LogService;
 
-  it('should be created', inject([TableBuilderService], (service: TableBuilderService) => {
-    expect(service).toBeTruthy();
-  }));
+    beforeEach(() => {
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [TableBuilderService,
+                { provide: FnService, useClass: MockFnService },
+                { provide: LoadingService, useClass: MockLoadingService },
+                { provide: LogService, useValue: log },
+                { provide: WebSocketService, useClass: MockWebSocketService },
+
+            ]
+        });
+    });
+
+    it('should be created', inject([TableBuilderService], (service: TableBuilderService) => {
+        expect(service).toBeTruthy();
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/tabledetail.service.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/tabledetail.service.spec.ts
index 5df608c..8854413e 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/tabledetail.service.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/tabledetail.service.spec.ts
@@ -15,19 +15,31 @@
  */
 import { TestBed, inject } from '@angular/core/testing';
 
+import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { TableDetailService } from '../../../../app/fw/widget/tabledetail.service';
+import { FnService } from '../../../../app/fw/util/fn.service';
+
+class MockFnService {}
 
 /**
  * ONOS GUI -- Widget -- Table Detail Service - Unit Tests
  */
 describe('TableDetailService', () => {
-  beforeEach(() => {
-    TestBed.configureTestingModule({
-      providers: [TableDetailService]
-    });
-  });
+    let log: LogService;
 
-  it('should be created', inject([TableDetailService], (service: TableDetailService) => {
-    expect(service).toBeTruthy();
-  }));
+    beforeEach(() => {
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [TableDetailService,
+                { provide: LogService, useValue: log },
+                { provide: FnService, useClass: MockFnService },
+            ]
+        });
+    });
+
+    it('should be created', inject([TableDetailService], (service: TableDetailService) => {
+        expect(service).toBeTruthy();
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/tableresize.directive.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/tableresize.directive.spec.ts
index a8241ea..3fa6fe0 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/tableresize.directive.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/tableresize.directive.spec.ts
@@ -13,44 +13,41 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+import { TestBed, inject } from '@angular/core/testing';
+
 import { TableResizeDirective } from '../../../../app/fw/widget/tableresize.directive';
 import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { FnService } from '../../../../app/fw/util/fn.service';
 import { MastService } from '../../../../app/fw/mast/mast.service';
-import { ActivatedRoute, Router} from '@angular/router';
 
-class MockFunctionService extends FnService {
-    // Override things as necessary
-}
+class MockFnService {}
+
+class MockMastService {}
 
 /**
  * ONOS GUI -- Widget -- Table Resize Directive - Unit Tests
  */
 describe('TableResizeDirective', () => {
-
-    let fs: MockFunctionService;
     let log: LogService;
-    let ar: ActivatedRoute;
-    let ms: MastService;
-    let directive: TableResizeDirective;
 
     beforeEach(() => {
-        log = new LogService();
-        ar = new ActivatedRoute();
-        fs = new MockFunctionService(ar, log);
-        ms = new MastService(fs, log);
-        directive = new TableResizeDirective(fs, log, ms);
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [ TableResizeDirective,
+                { provide: FnService, useClass: MockFnService },
+                { provide: LogService, useValue: log },
+                { provide: MastService, useClass: MockMastService },
+            ]
+        });
     });
 
     afterEach(() => {
-        fs = null;
         log = null;
-        ar = null;
-        ms = null;
-        directive = null;
     });
 
-    it('should create an instance', () => {
+    it('should create an instance', inject([TableResizeDirective], (directive: TableResizeDirective) => {
         expect(directive).toBeTruthy();
-    });
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/toolbar.service.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/toolbar.service.spec.ts
index 467462a..522586f 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/toolbar.service.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/toolbar.service.spec.ts
@@ -15,19 +15,43 @@
  */
 import { TestBed, inject } from '@angular/core/testing';
 
+import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { ToolbarService } from '../../../../app/fw/widget/toolbar.service';
+import { ButtonService } from '../../../../app/fw/widget/button.service';
+import { FnService } from '../../../../app/fw/util/fn.service';
+import { IconService } from '../../../../app/fw/svg/icon.service';
+import { PanelService } from '../../../../app/fw/layer/panel.service';
+
+class MockButtonService {}
+
+class MockIconService {}
+
+class MockFnService {}
+
+class MockPanelService {}
 
 /**
  * ONOS GUI -- Widget -- Toolbar Service - Unit Tests
  */
 describe('ToolbarService', () => {
-  beforeEach(() => {
-    TestBed.configureTestingModule({
-      providers: [ToolbarService]
-    });
-  });
+    let log: LogService;
 
-  it('should be created', inject([ToolbarService], (service: ToolbarService) => {
-    expect(service).toBeTruthy();
-  }));
+    beforeEach(() => {
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [ToolbarService,
+                { provide: LogService, useValue: log },
+                { provide: ButtonService, useClass: MockButtonService },
+                { provide: IconService, useClass: MockIconService },
+                { provide: FnService, useClass: MockFnService },
+                { provide: PanelService, useClass: MockPanelService },
+            ]
+        });
+    });
+
+    it('should be created', inject([ToolbarService], (service: ToolbarService) => {
+        expect(service).toBeTruthy();
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/tooltip.directive.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/tooltip.directive.spec.ts
index f8f41da..7445a05 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/tooltip.directive.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/tooltip.directive.spec.ts
@@ -13,39 +13,37 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+import { TestBed, inject } from '@angular/core/testing';
+
 import { TooltipDirective } from '../../../../app/fw/widget/tooltip.directive';
 import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { FnService } from '../../../../app/fw/util/fn.service';
-import { ActivatedRoute, Router} from '@angular/router';
 
-class MockFunctionService extends FnService {
-    // Override things as necessary
-}
+class MockFnService {}
 
 /**
  * ONOS GUI -- Widget -- Tooltip Directive - Unit Tests
  */
 describe('TooltipDirective', () => {
-    let fs: MockFunctionService;
     let log: LogService;
-    let ar: ActivatedRoute;
-    let directive: TooltipDirective;
 
     beforeEach(() => {
-        log = new LogService();
-        ar = new ActivatedRoute();
-        fs = new MockFunctionService(ar, log);
-        directive = new TooltipDirective(fs, log);
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [ TooltipDirective,
+                { provide: FnService, useClass: MockFnService },
+                { provide: LogService, useValue: log },
+            ]
+        });
     });
 
     afterEach(() => {
-        fs = null;
         log = null;
-        ar = null;
-        directive = null;
     });
 
-    it('should create an instance', () => {
+    it('should create an instance', inject([TooltipDirective], (directive: TooltipDirective) => {
         expect(directive).toBeTruthy();
-    });
+    }));
 });
diff --git a/web/gui2/src/main/webapp/tests/app/fw/widget/tooltip.service.spec.ts b/web/gui2/src/main/webapp/tests/app/fw/widget/tooltip.service.spec.ts
index 651ef5d..98a5a18 100644
--- a/web/gui2/src/main/webapp/tests/app/fw/widget/tooltip.service.spec.ts
+++ b/web/gui2/src/main/webapp/tests/app/fw/widget/tooltip.service.spec.ts
@@ -15,19 +15,31 @@
  */
 import { TestBed, inject } from '@angular/core/testing';
 
+import { LogService } from '../../../../app/log.service';
+import { ConsoleLoggerService } from '../../../../app/consolelogger.service';
 import { TooltipService } from '../../../../app/fw/widget/tooltip.service';
+import { FnService } from '../../../../app/fw/util/fn.service';
+
+class MockFnService {}
 
 /**
  * ONOS GUI -- Widget -- Tooltip Service - Unit Tests
  */
 describe('TooltipService', () => {
-  beforeEach(() => {
-    TestBed.configureTestingModule({
-      providers: [TooltipService]
-    });
-  });
+    let log: LogService;
 
-  it('should be created', inject([TooltipService], (service: TooltipService) => {
-    expect(service).toBeTruthy();
-  }));
+    beforeEach(() => {
+        log = new ConsoleLoggerService();
+
+        TestBed.configureTestingModule({
+            providers: [TooltipService,
+                { provide: LogService, useValue: log },
+                { provide: FnService, useClass: MockFnService },
+            ]
+        });
+    });
+
+    it('should be created', inject([TooltipService], (service: TooltipService) => {
+        expect(service).toBeTruthy();
+    }));
 });