Add unit tests for loadFromJSON with json object instead of json string

This commit is contained in:
Kienz 2012-12-08 13:38:19 +01:00
parent 1599ab3484
commit 332dcd81c2
2 changed files with 57 additions and 2 deletions

View file

@ -277,7 +277,7 @@
ok(!canvas.isEmpty());
});
test('loadFromJSON', function() {
test('loadFromJSON with json string', function() {
ok(typeof canvas.loadFromJSON == 'function');
canvas.loadFromJSON(PATH_JSON, function(){
@ -304,6 +304,33 @@
});
});
test('loadFromJSON with json object', function() {
ok(typeof canvas.loadFromJSON == 'function');
canvas.loadFromJSON(JSON.parse(PATH_JSON), function(){
var obj = canvas.item(0);
ok(!canvas.isEmpty(), 'canvas is not empty');
equal(obj.type, 'path', 'first object is a path object');
equal(canvas.backgroundColor, '#ff5555', 'backgroundColor is populated properly');
equal(obj.get('left'), 268);
equal(obj.get('top'), 266);
equal(obj.get('width'), 51);
equal(obj.get('height'), 49);
equal(obj.get('fill'), 'rgb(0,0,0)');
equal(obj.get('stroke'), null);
equal(obj.get('strokeWidth'), 1);
equal(obj.get('scaleX'), 1);
equal(obj.get('scaleY'), 1);
equal(obj.get('angle'), 0);
equal(obj.get('flipX'), false);
equal(obj.get('flipY'), false);
equal(obj.get('opacity'), 1);
ok(obj.get('path').length > 0);
});
});
// asyncTest('loadFromJSON with backgroundImage', function() {
// canvas.setBackgroundImage('../../assets/pug.jpg');
// var anotherCanvas = new fabric.Canvas();

View file

@ -263,7 +263,7 @@
ok(!canvas.isEmpty());
});
test('loadFromJSON', function() {
test('loadFromJSON with json string', function() {
ok(typeof canvas.loadFromJSON == 'function');
canvas.loadFromJSON(PATH_JSON, function(){
@ -291,6 +291,34 @@
});
});
test('loadFromJSON with json object', function() {
ok(typeof canvas.loadFromJSON == 'function');
canvas.loadFromJSON(JSON.parse(PATH_JSON), function(){
var obj = canvas.item(0);
ok(!canvas.isEmpty(), 'canvas is not empty');
equal(obj.type, 'path', 'first object is a path object');
equal(canvas.backgroundColor, '#ff5555', 'backgroundColor is populated properly');
equal(obj.get('left'), 268);
equal(obj.get('top'), 266);
equal(obj.get('width'), 51);
equal(obj.get('height'), 49);
equal(obj.get('fill'), 'rgb(0,0,0)');
equal(obj.get('stroke'), null);
equal(obj.get('strokeWidth'), 1);
equal(obj.get('scaleX'), 1);
equal(obj.get('scaleY'), 1);
equal(obj.get('angle'), 0);
equal(obj.get('flipX'), false);
equal(obj.get('flipY'), false);
equal(obj.get('opacity'), 1);
ok(obj.get('path').length > 0);
});
});
test('loadFromJSON custom properties', function() {
var rect = new fabric.Rect({ width: 10, height: 20 });
rect.padding = 123;