From 56ce8a89ebd215e5ba4b436f6f0a3c7c5eb11e54 Mon Sep 17 00:00:00 2001 From: Anton Lavrenov Date: Mon, 30 Oct 2023 19:43:02 -0500 Subject: [PATCH] new test --- test/sandbox.html | 5 +++- test/unit/Transformer-test.ts | 55 +++++++++++++++++++++++++++++++++-- 2 files changed, 57 insertions(+), 3 deletions(-) diff --git a/test/sandbox.html b/test/sandbox.html index 4b19f369..674c2c18 100644 --- a/test/sandbox.html +++ b/test/sandbox.html @@ -43,14 +43,17 @@ x: 100, y: 150, radius: 50, - fill: 'red', draggable: true, + fillLinearGradientStartPoint: { x: -50, y: -50 }, + fillLinearGradientEndPoint: { x: 50, y: 50 }, + fillLinearGradientColorStops: [0, 'red', 1, 'yellow'], }); layer.add(circle); const tr = new Konva.Transformer({ nodes: [circle], + flipEnabled: false, }); layer.add(tr); diff --git a/test/unit/Transformer-test.ts b/test/unit/Transformer-test.ts index 06a20387..90c1b40c 100644 --- a/test/unit/Transformer-test.ts +++ b/test/unit/Transformer-test.ts @@ -2353,7 +2353,7 @@ describe('Transformer', function () { layer.add(rect); var tr = new Konva.Transformer({ - nodes: [rect] + nodes: [rect], }); layer.add(tr); layer.draw(); @@ -2385,7 +2385,7 @@ describe('Transformer', function () { var tr = new Konva.Transformer({ nodes: [rect], - rotateAnchorCursor: 'grab' + rotateAnchorCursor: 'grab', }); layer.add(tr); layer.draw(); @@ -4878,4 +4878,55 @@ describe('Transformer', function () { tr.anchorStyleFunc(null); assert.equal(handler.fill(), 'white'); }); + + it.only('flip rectangle', function () { + var stage = addStage(); + var layer = new Konva.Layer(); + stage.add(layer); + + var rect = new Konva.Rect({ + draggable: true, + x: 150, + y: 50, + width: 100, + height: 100, + fillLinearGradientStartPoint: { x: -50, y: -50 }, + fillLinearGradientEndPoint: { x: 50, y: 50 }, + fillLinearGradientColorStops: [0, 'red', 1, 'yellow'], + }); + layer.add(rect); + + var tr = new Konva.Transformer({ + nodes: [rect], + flipEnabled: false, + }); + layer.add(tr); + + layer.draw(); + + simulateMouseDown(tr, { + x: 150, + y: 50, + }); + simulateMouseMove(tr, { + x: 250, + y: 50, + }); + simulateMouseMove(tr, { + x: 350, + y: 50, + }); + + simulateMouseUp(tr, { + x: 350, + y: 50, + }); + + layer.draw(); + + assertAlmostEqual(rect.x(), 350); + assertAlmostEqual(rect.y(), 50); + assertAlmostEqual(rect.scaleX(), 1); + assertAlmostEqual(rect.scaleY(), -1); + }); });