mirror of
https://github.com/konvajs/konva.git
synced 2025-10-15 04:14:52 +08:00
unit test for group hit graph and listening
This commit is contained in:
@@ -2605,6 +2605,70 @@ suite('Node', function() {
|
||||
assert.equal(rect.shouldDrawHit(), false);
|
||||
|
||||
|
||||
});
|
||||
|
||||
// ======================================================
|
||||
test('group, listening, & shouldDrawHit', function(){
|
||||
var stage = addStage();
|
||||
|
||||
var layer = new Kinetic.Layer({
|
||||
listening : false
|
||||
});
|
||||
stage.add(layer);
|
||||
|
||||
var group = new Kinetic.Group({
|
||||
listening : false
|
||||
});
|
||||
layer.add(group);
|
||||
|
||||
var rect = new Kinetic.Rect({
|
||||
x: 100,
|
||||
y: 50,
|
||||
width: 100,
|
||||
height: 50,
|
||||
fill: 'green',
|
||||
stroke: 'blue',
|
||||
listening : true
|
||||
});
|
||||
group.add(rect);
|
||||
|
||||
assert.equal(rect.isListening(), true);
|
||||
assert.equal(rect.shouldDrawHit(), true);
|
||||
|
||||
assert.equal(group.isListening(), false);
|
||||
assert.equal(group.shouldDrawHit(), true, 'hit graph for group');
|
||||
|
||||
assert.equal(layer.isListening(), false);
|
||||
assert.equal(layer.shouldDrawHit(), true, 'hit graph for layer');
|
||||
|
||||
var layerClick = 0;
|
||||
var groupClick = 0;
|
||||
var rectClick = 0;
|
||||
|
||||
rect.on('click', function() {
|
||||
rectClick += 1;
|
||||
});
|
||||
group.on('click', function() {
|
||||
groupClick += 1;
|
||||
});
|
||||
layer.on('click', function() {
|
||||
layerClick += 1;
|
||||
});
|
||||
|
||||
var top = stage.content.getBoundingClientRect().top;
|
||||
stage._mousedown({
|
||||
clientX: 291,
|
||||
clientY: 112 + top
|
||||
});
|
||||
Kinetic.DD._endDragBefore();
|
||||
stage._mouseup({
|
||||
clientX: 291,
|
||||
clientY: 112 + top
|
||||
});
|
||||
|
||||
assert.equal(rectClick, 1, 'click on rectange');
|
||||
assert.equal(groupClick, 0, 'no click on group');
|
||||
assert.equal(layerClick, 0, 'no click on layer');
|
||||
});
|
||||
|
||||
// ======================================================
|
||||
|
Reference in New Issue
Block a user