aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/web/gui/src/main/webapp/tests/app/fw/svg/zoom-spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/web/gui/src/main/webapp/tests/app/fw/svg/zoom-spec.js')
-rw-r--r--framework/src/onos/web/gui/src/main/webapp/tests/app/fw/svg/zoom-spec.js152
1 files changed, 0 insertions, 152 deletions
diff --git a/framework/src/onos/web/gui/src/main/webapp/tests/app/fw/svg/zoom-spec.js b/framework/src/onos/web/gui/src/main/webapp/tests/app/fw/svg/zoom-spec.js
deleted file mode 100644
index d70c87fb..00000000
--- a/framework/src/onos/web/gui/src/main/webapp/tests/app/fw/svg/zoom-spec.js
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * 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 -- SVG -- Zoom Service - Unit Tests
- */
-describe('factory: fw/svg/zoom.js', function() {
- var $log, fs, zs, svg, zoomLayer, zoomer;
-
- var cz = 'ZoomService.createZoomer(): ',
- d3s = ' (D3 selection) property defined';
-
- beforeEach(module('onosUtil', 'onosSvg'));
-
- beforeEach(inject(function (_$log_, FnService, ZoomService) {
- $log = _$log_;
- fs = FnService;
- zs = ZoomService;
- svg = d3.select('body').append('svg').attr('id', 'mySvg');
- zoomLayer = svg.append('g').attr('id', 'myZoomlayer');
- }));
-
- afterEach(function () {
- d3.select('#mySvg').remove();
- // Note: since zoomLayer is a child of svg, it should be removed also
- });
-
- it('should define ZoomService', function () {
- expect(zs).toBeDefined();
- });
-
- it('should define api functions', function () {
- expect(fs.areFunctions(zs, ['createZoomer'])).toBeTruthy();
- });
-
- function verifyZoomerApi() {
- expect(fs.areFunctions(zoomer, [
- 'panZoom', 'reset', 'translate', 'scale', 'scaleExtent'
- ])).toBeTruthy();
- }
-
- it('should fail gracefully with no option object', function () {
- spyOn($log, 'error');
-
- zoomer = zs.createZoomer();
- expect($log.error).toHaveBeenCalledWith(cz + 'No "svg" (svg tag)' + d3s);
- expect($log.error).toHaveBeenCalledWith(cz + 'No "zoomLayer" (g tag)' + d3s);
- expect(zoomer).toBeNull();
- });
-
- it('should complain if we miss required options', function () {
- spyOn($log, 'error');
-
- zoomer = zs.createZoomer({});
- expect($log.error).toHaveBeenCalledWith(cz + 'No "svg" (svg tag)' + d3s);
- expect($log.error).toHaveBeenCalledWith(cz + 'No "zoomLayer" (g tag)' + d3s);
- expect(zoomer).toBeNull();
- });
-
- it('should work with minimal parameters', function () {
- spyOn($log, 'error');
-
- zoomer = zs.createZoomer({
- svg: svg,
- zoomLayer: zoomLayer
- });
- expect($log.error).not.toHaveBeenCalled();
- verifyZoomerApi();
- });
-
- it('should start at scale 1 and translate 0,0', function () {
- zoomer = zs.createZoomer({
- svg: svg,
- zoomLayer: zoomLayer
- });
- verifyZoomerApi();
- expect(zoomer.translate()).toEqual([0,0]);
- expect(zoomer.scale()).toEqual(1);
- });
-
- it('should allow programmatic pan/zoom', function () {
- zoomer = zs.createZoomer({
- svg: svg,
- zoomLayer: zoomLayer
- });
- verifyZoomerApi();
- expect(zoomer.translate()).toEqual([0,0]);
- expect(zoomer.scale()).toEqual(1);
-
- zoomer.panZoom([20,30], 3);
- expect(zoomer.translate()).toEqual([20,30]);
- expect(zoomer.scale()).toEqual(3);
- });
-
- it('should provide default scale extent', function () {
- zoomer = zs.createZoomer({
- svg: svg,
- zoomLayer: zoomLayer
- });
- expect(zoomer.scaleExtent()).toEqual([0.25, 10]);
- });
-
- it('should allow us to override the minimum zoom', function () {
- zoomer = zs.createZoomer({
- svg: svg,
- zoomLayer: zoomLayer,
- zoomMin: 1.23
- });
- expect(zoomer.scaleExtent()).toEqual([1.23, 10]);
- });
-
- it('should allow us to override the maximum zoom', function () {
- zoomer = zs.createZoomer({
- svg: svg,
- zoomLayer: zoomLayer,
- zoomMax: 13
- });
- expect(zoomer.scaleExtent()).toEqual([0.25, 13]);
- });
-
- // TODO: test zoomed() where we fake out the d3.event.sourceEvent etc...
- // need to check default enabled (true) and custom enabled predicate
- // need to check that the callback is invoked also
-
- it('should invoke the callback on programmatic pan/zoom', function () {
- var foo = { cb: function () {} };
- spyOn(foo, 'cb');
-
- zoomer = zs.createZoomer({
- svg: svg,
- zoomLayer: zoomLayer,
- zoomCallback: foo.cb
- });
-
- zoomer.panZoom([0,0], 2);
- expect(foo.cb).toHaveBeenCalled();
- });
-
-});