ONOS-1724 - GUI -- svgUnit tests written. WIP topoToolbar unit tests written. Firing key presses programmatically investigated.

Change-Id: Ifff05859ebfebcee513d7fa8c42b52dc62f48f97
diff --git a/web/gui/src/main/webapp/tests/app/view/topo/topoToolbar-spec.js b/web/gui/src/main/webapp/tests/app/view/topo/topoToolbar-spec.js
new file mode 100644
index 0000000..63d2f23
--- /dev/null
+++ b/web/gui/src/main/webapp/tests/app/view/topo/topoToolbar-spec.js
@@ -0,0 +1,70 @@
+/*
+ * Copyright 2015 Open Networking Laboratory
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
+ ONOS GUI -- Topo View -- Topo Toolbar Service - Unit Tests
+ */
+describe('factory: view/topo/topoToolbar.js', function() {
+    var $log, fs, tts, prefs, ps,
+        d3Elem;
+
+    beforeEach(module('ovTopo', 'onosUtil', 'onosLayer', 'ngRoute', 'onosNav',
+        'onosWidget'));
+
+    beforeEach(inject(function (_$log_, FnService,
+                                TopoToolbarService, PanelService, PrefsService) {
+        $log = _$log_;
+        fs = FnService;
+        tts = TopoToolbarService;
+        prefs = PrefsService;
+        ps = PanelService;
+        d3Elem = d3.select('body').append('div').attr('id', 'floatpanels');
+        ps.init();
+    }));
+
+    it('should define TopoToolbarService', function () {
+        expect(tts).toBeDefined();
+    });
+
+    it('should define api functions', function () {
+        expect(fs.areFunctions(tts, [
+            'init', 'createToolbar', 'destroyToolbar',
+            'keyListener', 'toggleToolbar'
+        ])).toBeTruthy();
+    });
+
+    function verifyFirstRow() {
+
+    }
+
+    function verifySecondRow() {
+
+    }
+
+    function verifyThirdRow() {
+
+    }
+
+    it('should create a toolbar', function () {
+        //var toolbar = tts.createToolbar('foo');
+        //expect(toolbar).toBeTruthy();
+        //expect(d3.select('#toolbar-foo').empty()).toBe(false);
+        //verifyFirstRow();
+        //verifySecondRow();
+        //verifyThirdRow();
+    });
+
+});
\ No newline at end of file