Skip to content

Commit

Permalink
fix(tests): toLocalPoint, group.subTargetCheck
Browse files Browse the repository at this point in the history
  • Loading branch information
ShaMan123 committed Feb 11, 2022
1 parent 77caa46 commit 1259773
Show file tree
Hide file tree
Showing 3 changed files with 64 additions and 50 deletions.
2 changes: 1 addition & 1 deletion test/unit/canvas.js
Original file line number Diff line number Diff line change
Expand Up @@ -826,7 +826,7 @@
QUnit.test('findTarget with subTargetCheck', function(assert) {
var rect = makeRect({ left: 0, top: 0 }),
rect2 = makeRect({ left: 30, top: 30}), target,
group = new fabric.Group([rect, rect2]);
group = new fabric.Group([rect, rect2], { subTargetCheck: false });

canvas.add(group);
target = canvas.findTarget({
Expand Down
28 changes: 21 additions & 7 deletions test/unit/itext_click_behaviour.js
Original file line number Diff line number Diff line change
Expand Up @@ -167,20 +167,34 @@
iText.selected = true;
iText.__lastSelected = true;
iText.mouseUpHandler({ e: {} });
assert.equal(iText.isEditing, false, 'iText did not enter editing');
assert.equal(iText.isEditing, false, 'iText should not enter editing');
iText.exitEditing();
});
QUnit.test('_mouseUpHandler on a selected text in a group DOES NOT enter edit', function(assert) {
QUnit.test('_mouseUpHandler on a selected text in a group does NOT enter editing', function(assert) {
var iText = new fabric.IText('test');
iText.initDelayedCursor = function() {};
iText.renderCursorOrSelection = function() {};
assert.equal(iText.isEditing, false, 'iText not editing');
iText.canvas = canvas;
var group = new fabric.Group([iText], { subTargetCheck: false });
canvas.add(group);
iText.selected = true;
iText.__lastSelected = true;
iText.group = true;
iText.mouseUpHandler({ e: {} });
assert.equal(iText.isEditing, false, 'iText did not entered editing');
canvas.__onMouseUp({ clientX: 1, clientY: 1 });
assert.equal(canvas._target, group, 'group should be found as target');
assert.equal(iText.isEditing, false, 'iText should not enter editing');
iText.exitEditing();
});
QUnit.test('_mouseUpHandler on a text in a group does enter editing', function (assert) {
var iText = new fabric.IText('test');
iText.initDelayedCursor = function () { };
iText.renderCursorOrSelection = function () { };
assert.equal(iText.isEditing, false, 'iText not editing');
var group = new fabric.Group([iText], { subTargetCheck: true });
canvas.add(group);
iText.selected = true;
iText.__lastSelected = true;
canvas.__onMouseUp({ clientX: 1, clientY: 1 });
assert.equal(iText.isEditing, true, 'iText should enter editing');
iText.exitEditing();
});
QUnit.test('_mouseUpHandler on a corner of selected text DOES NOT enter edit', function(assert) {
Expand All @@ -193,7 +207,7 @@
iText.__lastSelected = true;
iText.__corner = 'mt';
iText.mouseUpHandler({ e: {} });
assert.equal(iText.isEditing, false, 'iText did not entered editing');
assert.equal(iText.isEditing, false, 'iText should not enter editing');
iText.exitEditing();
canvas.renderAll();
});
Expand Down
84 changes: 42 additions & 42 deletions test/unit/object_origin.js
Original file line number Diff line number Diff line change
Expand Up @@ -161,39 +161,39 @@
});


QUnit.test('toLocalPoint', function(assert) {
QUnit.test('normalizePoint', function(assert) {
var rect = new fabric.Rect(rectOptions),
p,
point = new fabric.Point(15, 20);

p = rect.toLocalPoint(point, 'center', 'center');
p = rect.normalizePoint(point, 'center', 'center');
assert.deepEqual(p, new fabric.Point(-42, -67));

p = rect.toLocalPoint(point, 'center', 'top');
p = rect.normalizePoint(point, 'center', 'top');
assert.deepEqual(p, new fabric.Point(-42, -25));

p = rect.toLocalPoint(point, 'center', 'bottom');
p = rect.normalizePoint(point, 'center', 'bottom');
assert.deepEqual(p, new fabric.Point(-42, -109));

p = rect.toLocalPoint(point, 'left', 'center');
p = rect.normalizePoint(point, 'left', 'center');
assert.deepEqual(p, new fabric.Point(-20, -67));

p = rect.toLocalPoint(point, 'left', 'top');
p = rect.normalizePoint(point, 'left', 'top');
assert.deepEqual(p, new fabric.Point(-20, -25));

p = rect.toLocalPoint(point, 'left', 'bottom');
p = rect.normalizePoint(point, 'left', 'bottom');
assert.deepEqual(p, new fabric.Point(-20, -109));

p = rect.toLocalPoint(point, 'right', 'center');
p = rect.normalizePoint(point, 'right', 'center');
assert.deepEqual(p, new fabric.Point(-64, -67));

p = rect.toLocalPoint(point, 'right', 'top');
p = rect.normalizePoint(point, 'right', 'top');
assert.deepEqual(p, new fabric.Point(-64, -25));

p = rect.toLocalPoint(point, 'right', 'bottom');
p = rect.normalizePoint(point, 'right', 'bottom');
assert.deepEqual(p, new fabric.Point(-64, -109));

p = rect.toLocalPoint(point);
p = rect.normalizePoint(point);
assert.deepEqual(p, new fabric.Point(-20, -25));
});

Expand All @@ -203,34 +203,34 @@
point = new fabric.Point(15, 20);
rect.angle = 35;

p = rect.toLocalPoint(point, 'center', 'center');
p = rect.normalizePoint(point, 'center', 'center');
assert.deepEqual(p, new fabric.Point(-52.72245179455599, -51.00727238020387));

p = rect.toLocalPoint(point, 'center', 'top');
p = rect.normalizePoint(point, 'center', 'top');
assert.deepEqual(p, new fabric.Point(-52.72245179455599, -9.007272380203872));

p = rect.toLocalPoint(point, 'center', 'bottom');
p = rect.normalizePoint(point, 'center', 'bottom');
assert.deepEqual(p, new fabric.Point(-52.72245179455599, -93.00727238020387));

p = rect.toLocalPoint(point, 'left', 'center');
p = rect.normalizePoint(point, 'left', 'center');
assert.deepEqual(p, new fabric.Point(-30.722451794555987, -51.00727238020387));

p = rect.toLocalPoint(point, 'left', 'top');
p = rect.normalizePoint(point, 'left', 'top');
assert.deepEqual(p, new fabric.Point(-30.722451794555987, -9.007272380203872));

p = rect.toLocalPoint(point, 'left', 'bottom');
p = rect.normalizePoint(point, 'left', 'bottom');
assert.deepEqual(p, new fabric.Point(-30.722451794555987, -93.00727238020387));

p = rect.toLocalPoint(point, 'right', 'center');
p = rect.normalizePoint(point, 'right', 'center');
assert.deepEqual(p, new fabric.Point(-74.722451794556, -51.00727238020387));

p = rect.toLocalPoint(point, 'right', 'top');
p = rect.normalizePoint(point, 'right', 'top');
assert.deepEqual(p, new fabric.Point(-74.722451794556, -9.007272380203872));

p = rect.toLocalPoint(point, 'right', 'bottom');
p = rect.normalizePoint(point, 'right', 'bottom');
assert.deepEqual(p, new fabric.Point(-74.722451794556, -93.00727238020387));

p = rect.toLocalPoint(point);
p = rect.normalizePoint(point);
assert.deepEqual(p, new fabric.Point(-58.791317146942106, -3.9842049203432026));
});

Expand Down Expand Up @@ -487,39 +487,39 @@
});


QUnit.test('toLocalPoint with numeric origins', function(assert) {
QUnit.test('normalizePoint with numeric origins', function(assert) {
var rect = new fabric.Rect(rectOptions),
p,
point = new fabric.Point(15, 20);

p = rect.toLocalPoint(point, 0.5, 0.5);
p = rect.normalizePoint(point, 0.5, 0.5);
assert.deepEqual(p, new fabric.Point(-42, -67));

p = rect.toLocalPoint(point, 0.5, 0);
p = rect.normalizePoint(point, 0.5, 0);
assert.deepEqual(p, new fabric.Point(-42, -25));

p = rect.toLocalPoint(point, 0.5, 1);
p = rect.normalizePoint(point, 0.5, 1);
assert.deepEqual(p, new fabric.Point(-42, -109));

p = rect.toLocalPoint(point, 0, 0.5);
p = rect.normalizePoint(point, 0, 0.5);
assert.deepEqual(p, new fabric.Point(-20, -67));

p = rect.toLocalPoint(point, 0, 0);
p = rect.normalizePoint(point, 0, 0);
assert.deepEqual(p, new fabric.Point(-20, -25));

p = rect.toLocalPoint(point, 0, 1);
p = rect.normalizePoint(point, 0, 1);
assert.deepEqual(p, new fabric.Point(-20, -109));

p = rect.toLocalPoint(point, 1, 0.5);
p = rect.normalizePoint(point, 1, 0.5);
assert.deepEqual(p, new fabric.Point(-64, -67));

p = rect.toLocalPoint(point, 1, 0);
p = rect.normalizePoint(point, 1, 0);
assert.deepEqual(p, new fabric.Point(-64, -25));

p = rect.toLocalPoint(point, 1, 1);
p = rect.normalizePoint(point, 1, 1);
assert.deepEqual(p, new fabric.Point(-64, -109));

p = rect.toLocalPoint(point);
p = rect.normalizePoint(point);
assert.deepEqual(p, new fabric.Point(-20, -25));
});

Expand All @@ -529,34 +529,34 @@
point = new fabric.Point(15, 20);
rect.angle = 35;

p = rect.toLocalPoint(point, 0.5, 0.5);
p = rect.normalizePoint(point, 0.5, 0.5);
assert.deepEqual(p, new fabric.Point(-52.72245179455599, -51.00727238020387));

p = rect.toLocalPoint(point, 0.5, 0);
p = rect.normalizePoint(point, 0.5, 0);
assert.deepEqual(p, new fabric.Point(-52.72245179455599, -9.007272380203872));

p = rect.toLocalPoint(point, 0.5, 1);
p = rect.normalizePoint(point, 0.5, 1);
assert.deepEqual(p, new fabric.Point(-52.72245179455599, -93.00727238020387));

p = rect.toLocalPoint(point, 0, 0.5);
p = rect.normalizePoint(point, 0, 0.5);
assert.deepEqual(p, new fabric.Point(-30.722451794555987, -51.00727238020387));

p = rect.toLocalPoint(point, 0, 0);
p = rect.normalizePoint(point, 0, 0);
assert.deepEqual(p, new fabric.Point(-30.722451794555987, -9.007272380203872));

p = rect.toLocalPoint(point, 0, 1);
p = rect.normalizePoint(point, 0, 1);
assert.deepEqual(p, new fabric.Point(-30.722451794555987, -93.00727238020387));

p = rect.toLocalPoint(point, 1, 0.5);
p = rect.normalizePoint(point, 1, 0.5);
assert.deepEqual(p, new fabric.Point(-74.722451794556, -51.00727238020387));

p = rect.toLocalPoint(point, 1, 0);
p = rect.normalizePoint(point, 1, 0);
assert.deepEqual(p, new fabric.Point(-74.722451794556, -9.007272380203872));

p = rect.toLocalPoint(point, 1, 1);
p = rect.normalizePoint(point, 1, 1);
assert.deepEqual(p, new fabric.Point(-74.722451794556, -93.00727238020387));

p = rect.toLocalPoint(point);
p = rect.normalizePoint(point);
assert.deepEqual(p, new fabric.Point(-58.791317146942106, -3.9842049203432026));
});

Expand Down

0 comments on commit 1259773

Please sign in to comment.