From 025d6cdcd30ceeff12eb4563f0782e17b7096ee9 Mon Sep 17 00:00:00 2001 From: Ian Gilman Date: Thu, 7 Mar 2013 11:52:01 -0800 Subject: [PATCH] Added more tests --- test/test.js | 63 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 58 insertions(+), 5 deletions(-) diff --git a/test/test.js b/test/test.js index 7863e6fc..5e99f6b7 100644 --- a/test/test.js +++ b/test/test.js @@ -1,8 +1,11 @@ (function() { - asyncTest('OpenSeadragon', function() { + var viewer = null; + + // ---------- + asyncTest('Open', function() { $(document).ready(function() { - var viewer = OpenSeadragon({ + viewer = OpenSeadragon({ id: 'example', prefixUrl: '/build/openseadragon/images/', tileSources: '/test/data/testpattern.dzi', @@ -10,13 +13,63 @@ }); ok(viewer, 'Viewer exists'); - viewer.addHandler('open', function(eventSender, eventData) { + + var openHandler = function(eventSender, eventData) { + viewer.removeHandler('open', openHandler); ok(true, 'Open event was sent'); ok(eventSender === viewer, 'Sender of open event was viewer'); ok(eventData, 'Handler also received event data'); + ok(viewer.viewport, 'Viewport exists'); start(); - }); + }; + + viewer.addHandler('open', openHandler); }); - }); + }); + + // ---------- + asyncTest('Zoom', function() { + var viewport = viewer.viewport; + ok(viewport.getZoom() === 1, 'We start out unzoomed'); + + var zoomHandler = function() { + viewer.removeHandler('animationfinish', zoomHandler); + ok(viewport.getZoom() === 2, 'Zoomed correctly'); + start(); + }; + + viewer.addHandler('animationfinish', zoomHandler); + viewport.zoomTo(2); + }); + + // ---------- + asyncTest('Pan', function() { + var viewport = viewer.viewport; + var center = viewport.getCenter(); + ok(center.x === 0.5 && center.y === 0.5, 'We start out unpanned'); + + var panHandler = function() { + viewer.removeHandler('animationfinish', panHandler); + center = viewport.getCenter(); + ok(center.x === 0.1 && center.y === 0.1, 'Panned correctly'); + start(); + }; + + viewer.addHandler('animationfinish', panHandler); + viewport.panTo(new OpenSeadragon.Point(0.1, 0.1)); + }); + + // ---------- + asyncTest('Close', function() { + var closeHandler = function() { + viewer.removeHandler('close', closeHandler); + ok(true, 'Close event was sent'); + start(); + }; + + viewer.addHandler('close', closeHandler); + + viewer.close(); + }); })();