describe("canvas2svg", function() { describe("can by created", function() { it("with options", function() { var ctx = new C2S({width:100, height:200, enableMirroring:true}); expect(ctx instanceof C2S).toBe(true); expect(ctx.width).toEqual(100); expect(ctx.height).toEqual(200); expect(ctx.enableMirroring).toEqual(true); var ctx2 = new C2S(300,400); expect(ctx2 instanceof C2S).toBe(true); expect(ctx2.width).toEqual(300); expect(ctx2.height).toEqual(400); expect(ctx2.enableMirroring).toEqual(false); }); it("with no options and have defaults", function() { var ctx = new C2S(); expect(ctx instanceof C2S).toBe(true); expect(ctx.width).toEqual(500); expect(ctx.height).toEqual(500); expect(ctx.enableMirroring).toEqual(false); }); it("even if it's called as a function", function() { //notice the lack of new! var ctx = C2S({width:100, height:200, enableMirroring:true}); expect(ctx instanceof C2S).toBe(true); expect(ctx.width).toEqual(100); expect(ctx.height).toEqual(200); expect(ctx.enableMirroring).toEqual(true); var ctx2 = C2S(300,400); expect(ctx2 instanceof C2S).toBe(true); expect(ctx2.width).toEqual(300); expect(ctx2.height).toEqual(400); expect(ctx2.enableMirroring).toEqual(false); var ctx = C2S(); expect(ctx instanceof C2S).toBe(true); expect(ctx.width).toEqual(500); expect(ctx.height).toEqual(500); expect(ctx.enableMirroring).toEqual(false); }); }); describe("has implemented methods", function() { var ctx, methods = [ "save", "restore", "scale", "rotate", "translate", "transform", "beginPath", "moveTo", "closePath", "lineTo", "bezierCurveTo", "quadraticCurveTo", "stroke", "fill", "rect", "fillRect", "strokeRect", "clearRect", "createLinearGradient", "createRadialGradient", "fillText", "strokeText", "measureText", "arc", "clip", "drawImage", "createPattern" ]; beforeEach(function() { ctx = new C2S(); }); //TODO: better tests for each method for(var i=0; i'); }); }); });