paper.js/test/tests/Layer.js

69 lines
1.7 KiB
JavaScript
Raw Normal View History

2011-02-16 16:11:26 -05:00
module('Layer');
test('previousSibling / nextSibling', function() {
var proj = paper.project;
var firstLayer = proj.activeLayer;
2011-02-16 16:11:26 -05:00
var secondLayer = new Layer();
equals(function() {
return secondLayer.previousSibling == firstLayer;
}, true);
equals(function() {
return secondLayer.nextSibling == null;
}, true);
2011-02-16 16:11:26 -05:00
// Move another layer into secondLayer and check nextSibling /
// previousSibling:
var path = new Path();
var thirdLayer = new Layer();
secondLayer.appendBottom(thirdLayer);
equals(function() {
return secondLayer.children.length;
}, 2);
equals(function() {
return thirdLayer.nextSibling == path;
}, true);
2011-02-16 16:11:26 -05:00
secondLayer.appendTop(thirdLayer);
equals(function() {
return thirdLayer.nextSibling == null;
}, true);
equals(function() {
return thirdLayer.previousSibling == path;
}, true);
equals(function() {
return proj.layers.length == 2;
}, true);
2011-02-16 16:11:26 -05:00
firstLayer.appendTop(secondLayer);
equals(function() {
return proj.layers.length == 1;
}, true);
2011-02-16 16:11:26 -05:00
});
test('moveAbove / moveBelow', function() {
var proj = paper.project;
var firstLayer = proj.activeLayer;
2011-02-16 16:11:26 -05:00
var secondLayer = new Layer();
secondLayer.moveBelow(firstLayer);
equals(function() {
return secondLayer.previousSibling == null;
}, true);
equals(function() {
return secondLayer.nextSibling == firstLayer;
}, true);
2011-02-16 16:11:26 -05:00
var path = new Path();
firstLayer.appendTop(path);
// move the layer above the path, inside the firstLayer:
secondLayer.moveAbove(path);
equals(function() {
return secondLayer.previousSibling == path;
}, true);
equals(function() {
return secondLayer.parent == firstLayer;
}, true);
2011-02-16 16:11:26 -05:00
// There should now only be one layer left:
equals(function() {
return proj.layers.length;
}, 1);
2011-02-16 16:11:26 -05:00
});