Skip to content

Commit

Permalink
Added more tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Sebastian Werner committed Oct 11, 2011
1 parent 61208f6 commit 735d119
Show file tree
Hide file tree
Showing 2 changed files with 81 additions and 5 deletions.
2 changes: 1 addition & 1 deletion src/Scroller.js
Expand Up @@ -356,7 +356,7 @@ var Scroller;
}

if (originTop == null) {
originTop = self.__clientWidth / 2;
originTop = self.__clientHeight / 2;
}

// Limit level according to configuration
Expand Down
84 changes: 80 additions & 4 deletions test/test.js
Expand Up @@ -20,15 +20,15 @@ test("Setting up dimensions", function() {

var scroller = new Scroller();
equal(typeof scroller, "object");
scroller.setDimensions(1024, 768, 5000, 5000);
scroller.setDimensions(1000, 600, 5000, 5000);

});

test("Query values", function() {

var scroller = new Scroller();
equal(typeof scroller, "object");
scroller.setDimensions(1024, 768, 5000, 5000);
scroller.setDimensions(1000, 600, 5000, 5000);
var values = scroller.getValues();
equal(typeof values, "object");
equal(values.left, 0);
Expand All @@ -41,7 +41,7 @@ test("Scrolling via API", function() {

var scroller = new Scroller();
equal(typeof scroller, "object");
scroller.setDimensions(1024, 768, 5000, 5000);
scroller.setDimensions(1000, 600, 5000, 5000);
scroller.scrollTo(300, 500);

var values = scroller.getValues();
Expand All @@ -50,4 +50,80 @@ test("Scrolling via API", function() {
equal(values.top, 500);
equal(values.zoom, 1);

});
});

test("Zooming via API", function() {

var scroller = new Scroller(null, {
zooming: true
});
equal(typeof scroller, "object");
scroller.setDimensions(1000, 600, 5000, 5000);
scroller.zoomTo(2.45);

var values = scroller.getValues();
equal(typeof values, "object");
equal(values.zoom, 2.45);

});

test("Zooming + Scrolling via API", function() {

var scroller = new Scroller(null, {
zooming: true
});
equal(typeof scroller, "object");
scroller.setDimensions(1000, 600, 5000, 5000);
scroller.zoomTo(1.7);
scroller.scrollTo(300, 500);

var values = scroller.getValues();
equal(typeof values, "object");
equal(values.left, 300);
equal(values.top, 500);
equal(values.zoom, 1.7);

});

test("Scrolling + Zooming via API", function() {

var scroller = new Scroller(null, {
zooming: true
});
equal(typeof scroller, "object");
scroller.setDimensions(1000, 600, 5000, 5000);
scroller.scrollTo(300, 500);
scroller.zoomTo(1.7, false, 0, 0); // origin is top/left corner

var values = scroller.getValues();
equal(typeof values, "object");
equal(values.left / 1.7, 300);
equal(values.top / 1.7, 500);
equal(values.zoom, 1.7);

});

test("Scrolling + Zooming via API (Auto Origin)", function() {

var scroller = new Scroller(null, {
zooming: true
});
equal(typeof scroller, "object");
scroller.setDimensions(1000, 600, 5000, 5000);
scroller.scrollTo(300, 500);
scroller.zoomTo(1.7);

var originLeft = 1000 / 2;
var originTop = 600 / 2;

// Compute center zooming
var newLeft = ((originLeft + 300) * 1.7 / 1) - originLeft;
var newTop = ((originTop + 500) * 1.7 / 1) - originTop;

var values = scroller.getValues();
equal(typeof values, "object");
equal(values.left, newLeft);
equal(values.top, newTop);
equal(values.zoom, 1.7);

});

0 comments on commit 735d119

Please sign in to comment.