From a254fa761c21c6d8492ee0e204a71bd204ce8a95 Mon Sep 17 00:00:00 2001 From: Andrea Bogazzi Date: Sat, 20 Oct 2018 01:35:34 +0200 Subject: [PATCH] more tests --- test/visual/golden/text1.png | Bin 0 -> 12350 bytes test/visual/golden/text2.png | Bin 0 -> 29510 bytes test/visual/golden/text3.png | Bin 0 -> 15328 bytes test/visual/golden/text4.png | Bin 0 -> 7663 bytes test/visual/golden/text5.png | Bin 0 -> 29689 bytes test/visual/text.js | 159 +++++++++++++++++++++++++++++++++++ 6 files changed, 159 insertions(+) create mode 100644 test/visual/golden/text1.png create mode 100644 test/visual/golden/text2.png create mode 100644 test/visual/golden/text3.png create mode 100644 test/visual/golden/text4.png create mode 100644 test/visual/golden/text5.png create mode 100644 test/visual/text.js diff --git a/test/visual/golden/text1.png b/test/visual/golden/text1.png new file mode 100644 index 0000000000000000000000000000000000000000..b802ee9c6597223779546b09ae69af8cff2130e3 GIT binary patch literal 12350 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 literal 0 HcmV?d00001 diff --git a/test/visual/golden/text2.png b/test/visual/golden/text2.png new file mode 100644 index 0000000000000000000000000000000000000000..d1850bd97d44e363d9d9e0b0dee87bc76f226fa9 GIT binary patch literal 29510 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 PU4WXhwo<(UF!KKaM+=Nk literal 0 HcmV?d00001 diff --git a/test/visual/golden/text4.png b/test/visual/golden/text4.png new file mode 100644 index 0000000000000000000000000000000000000000..ca62ca6ff27d50b807b89693276021d9e044ed5f GIT binary patch literal 7663 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 B+hza& literal 0 HcmV?d00001 diff --git a/test/visual/golden/text5.png b/test/visual/golden/text5.png new file mode 100644 index 0000000000000000000000000000000000000000..15cd8dda7eb67af293e21fa6ff337e79f8311f61 GIT binary patch literal 29689 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 ArT_o{ literal 0 HcmV?d00001 diff --git a/test/visual/text.js b/test/visual/text.js new file mode 100644 index 00000000..ba8bc141 --- /dev/null +++ b/test/visual/text.js @@ -0,0 +1,159 @@ +(function() { + fabric.enableGLFiltering = false; + fabric.isWebglSupported = false; + fabric.Object.prototype.objectCaching = false; + var visualTestLoop; + if (fabric.isLikelyNode) { + visualTestLoop = global.visualTestLoop; + } + else { + visualTestLoop = window.visualTestLoop; + } + var fabricCanvas = this.canvas = new fabric.Canvas(null, { + enableRetinaScaling: false, renderOnAddRemove: false, width: 200, height: 200, + }); + + var tests = []; + + function text1(canvas, callback) { + canvas.setDimensions({ width: 300, height: 300 }); + var text = new fabric.Text('Kerning: VAVAWA', + { fontSize: 20, objectCaching: false, strokeWidth: 0 } + ); + var text2 = new fabric.Text('multi line\ntext\nwith lot of space on some lines', + { fontSize: 20, objectCaching: false, angle: 45, top: 40, left: 40, strokeWidth: 0 } + ); + var text3 = new fabric.Text('multi line\ntext\nwith lot of space on some lines', + { fontSize: 20, objectCaching: false, angle: -45, top: 200, left: 0, textAlign: 'right', strokeWidth: 0 } + ); + canvas.add(text, text2, text3); + canvas.renderAll(); + callback(canvas.lowerCanvasEl); + } + + tests.push({ + test: 'simple text test', + code: text1, + golden: 'text1.png', + newModule: 'Text', + percentage: 0.06, + }); + + function text2(canvas, callback) { + var text4 = new fabric.Text('2 spaces trailing \nno trailing spance\n5 spaces trailing ', + { fontSize: 20, objectCaching: false, top: 200, left: 0, textAlign: 'right', strokeWidth: 0 } + ); + var rect = new fabric.Rect({ + width: text4.width, + height: text4.height, + strokeWidth: 2, + stroke: 'blue', + fill: 'rgba(255, 255, 0, 0.4)', + top: text4.top, + left: text4.left + }); + var text5 = new fabric.Text(' 2 spaces both sides \nno trailing spance\n 5 spaces both sides ', + { fontSize: 20, objectCaching: false, top: 250, angle: -90, left: 200, strokeWidth: 0 } + ); + var rect2 = new fabric.Rect({ + width: text5.width, + height: text5.height, + strokeWidth: 2, + stroke: 'green', + fill: 'rgba(255, 0, 255, 0.4)', + top: text5.top, + left: text5.left, + angle: text5.angle + }); + var text = new fabric.Text('text with all decorations\nmultiline', + { underline: true, overline: true, linethrough: true, fontSize: 30, strokeWidth: 0 } + ); + canvas.add(rect, text4, rect2, text5, text); + canvas.renderAll(); + callback(canvas.lowerCanvasEl); + } + + tests.push({ + test: 'Text with trailing spaces', + code: text2, + golden: 'text2.png', + percentage: 0.06, + }); + + function text3(canvas, callback) { + var text = new fabric.Text('lorem ipsum\ndolor\nsit Amet2\nconsectgetur', + { objectCaching: false, fontFamily: 'Arial', styles: + {"0":{"0":{"fill":"red","fontSize":20},"1":{"fill":"red","fontSize":30},"2":{"fill":"red","fontSize":40},"3":{"fill":"red","fontSize":50},"4":{"fill":"red","fontSize":60},"6":{"textBackgroundColor":"yellow"},"7":{"textBackgroundColor":"yellow","textDecoration":" line-through","linethrough":true},"8":{"textBackgroundColor":"yellow","textDecoration":" line-through","linethrough":true},"9":{"textBackgroundColor":"yellow"}},"1":{"0":{"textDecoration":"underline"},"1":{"textDecoration":"underline"},"2":{"fill":"green","fontStyle":"italic","textDecoration":"underline"},"3":{"fill":"green","fontStyle":"italic","textDecoration":"underline"},"4":{"fill":"green","fontStyle":"italic","textDecoration":"underline"}},"2":{"0":{"fill":"blue","fontWeight":"bold"},"1":{"fill":"blue","fontWeight":"bold"},"2":{"fill":"blue","fontWeight":"bold","fontSize":63},"4":{"fontFamily":"Courier","textDecoration":" underline","underline":true},"5":{"fontFamily":"Courier","textDecoration":" underline","underline":true},"6":{"fontFamily":"Courier","textDecoration":" overline","overline":true},"7":{"fontFamily":"Courier","textDecoration":" overline","overline":true},"8":{"fontFamily":"Courier","textDecoration":" overline","overline":true}},"3":{"0":{"fill":"#666","textDecoration":"line-through"},"1":{"fill":"#666","textDecoration":"line-through"},"2":{"fill":"#666","textDecoration":"line-through"},"3":{"fill":"#666","textDecoration":"line-through"},"4":{"fill":"#666","textDecoration":"line-through"},"7":{"textDecoration":" underline","underline":true},"8":{"stroke":"#ff1e15","strokeWidth":2},"9":{"stroke":"#ff1e15","strokeWidth":2}}} + } + ); + canvas.add(text); + canvas.renderAll(); + callback(canvas.lowerCanvasEl); + } + + tests.push({ + test: 'Text with styles', + code: text3, + golden: 'text3.png', + percentage: 0.06, + }); + + function text4(canvas, callback) { + var text = new fabric.Text('lorem ipsum\ndolor\nsit Amet2\nconsectgetur', { + fontSize: 30, scaleX: 20, scaleY: 30, skewX: 30, skewY: 25, skewY: 15, angle: 25 + }); + var matrix = text.calcTransformMatrix(); + canvas.viewportTransform = fabric.util.invertTransform(matrix); + canvas.viewportTransform[4] = 0; + canvas.viewportTransform[5] = 0; + canvas.add(text); + canvas.renderAll(); + callback(canvas.lowerCanvasEl); + } + + tests.push({ + test: 'Text on a transformed canvas', + code: text4, + golden: 'text4.png', + percentage: 0.06, + }); + + function text5(canvas, callback) { + var text = new fabric.Text('Scaling', { + fontSize: 10, scaleX: 2, scaleY: 2, fill: 'rgba(0,0,255,0.4)', strokeWidth: 0 + }); + var text2 = new fabric.Text('Scaling', { + fontSize: 10, scaleX: 3, scaleY: 3, fill: 'rgba(0,0,255,0.4)', top: 10, strokeWidth: 0 + }); + var text3 = new fabric.Text('Scaling', { + fontSize: 10, scaleX: 4, scaleY: 4, fill: 'rgba(0,0,255,0.4)', top: 20, strokeWidth: 0 + }); + var text4 = new fabric.Text('Scaling', { + fontSize: 10, scaleX: 5, scaleY: 5, fill: 'rgba(0,0,255,0.4)', top: 30, strokeWidth: 0 + }); + var text5 = new fabric.Text('Scaling', { + fontSize: 10, scaleX: 6, scaleY: 6, fill: 'rgba(0,0,255,0.4)', top: 40, strokeWidth: 0 + }); + var text6 = new fabric.Text('Scaling', { + fontSize: 10, scaleX: 7, scaleY: 7, fill: 'rgba(0,0,255,0.4)', top: 50, strokeWidth: 0 + }); + var text7 = new fabric.Text('A', { + fontSize: 80, scaleX: 1, scaleY: 1, fill: 'rgb(0,0,255)', left: 190, strokeWidth: 12, stroke: 'rgba(255,0,0,0.2)' + }); + var text8 = new fabric.Text('A', { + fontSize: 65, scaleX: 8, scaleY: 8, fill: 'rgb(0,0,255)', top: -100, left: -100, strokeWidth: 12, stroke: 'rgba(255,0,0,0.2)' + }); + canvas.add(text8, text, text2, text3, text4, text5, text6, text7); + canvas.renderAll(); + callback(canvas.lowerCanvasEl); + } + + tests.push({ + test: 'Text with strokeWidths', + code: text5, + golden: 'text5.png', + percentage: 0.06, + }); + + tests.forEach(visualTestLoop(fabricCanvas, QUnit)); +})();