Skip to content

Commit 9077b78

Browse files
committed
Add jasmine test for bugfix #6780
1 parent 5d467c7 commit 9077b78

File tree

1 file changed

+96
-0
lines changed

1 file changed

+96
-0
lines changed

test/jasmine/tests/select_test.js

+96
Original file line numberDiff line numberDiff line change
@@ -1599,6 +1599,102 @@ describe('Test select box and lasso in general:', function() {
15991599
})
16001600
.then(done, done.fail);
16011601
});
1602+
1603+
it('should re-select data in all overlaying visible traces', function(done){
1604+
var gd = createGraphDiv();
1605+
_newPlot(gd,
1606+
[{
1607+
x: [1, 2, 3],
1608+
y: [4, 5, 6],
1609+
name: "yaxis1 data",
1610+
type: "scatter"
1611+
},
1612+
{
1613+
x: [2, 3, 4],
1614+
y: [40, 50, 60],
1615+
name: "yaxis2 data",
1616+
yaxis: "y2",
1617+
xaxis: "x2",
1618+
type: "scatter"
1619+
},
1620+
{
1621+
x: [3, 4, 5],
1622+
y: [400, 500, 600],
1623+
name: "yaxis3 data",
1624+
yaxis: "y3",
1625+
type: "scatter"
1626+
},
1627+
{
1628+
x: [4, 5, 6],
1629+
y: [1000, 2000, 3000],
1630+
name: "yaxis4 data",
1631+
yaxis: "y4",
1632+
xaxis: "x2",
1633+
type: "scatter"
1634+
}
1635+
], {
1636+
grid: {
1637+
rows: 2,
1638+
columns: 1,
1639+
pattern: "independent"
1640+
},
1641+
width: 800,
1642+
height: 800,
1643+
yaxis: {
1644+
showline: true,
1645+
title: {
1646+
text: "yaxis title"
1647+
}
1648+
},
1649+
yaxis2: {
1650+
title: {
1651+
text: "yaxis2 title"
1652+
},
1653+
showline: true
1654+
},
1655+
yaxis3: {
1656+
title: {
1657+
text: "yaxis3 title"
1658+
},
1659+
anchor: "free",
1660+
overlaying: "y",
1661+
showline: true,
1662+
autoshift: true
1663+
},
1664+
yaxis4: {
1665+
title: {
1666+
text: "yaxis4 title"
1667+
},
1668+
anchor: "free",
1669+
overlaying: "y2",
1670+
showline: true,
1671+
autoshift: true
1672+
}
1673+
}).then(function() {
1674+
return Plotly.relayout(gd, 'dragmode', 'select');
1675+
}).then(function () {
1676+
return drag([[150, 100], [600, 250]]);
1677+
}).then(function() {
1678+
expect(gd.data[0].selectedpoints).toEqual([1, 2]);
1679+
expect(gd.data[1].selectedpoints).toBe(undefined);
1680+
expect(gd.data[2].selectedpoints).toEqual([1]);
1681+
expect(gd.data[3].selectedpoints).toBe(undefined);
1682+
}).then(function() {
1683+
return drag([[600, 175], [780, 175]]); // Extend existing selection
1684+
}).then(function() {
1685+
expect(gd.data[0].selectedpoints).toEqual([1, 2]);
1686+
expect(gd.data[1].selectedpoints).toBe(undefined);
1687+
expect(gd.data[2].selectedpoints).toEqual([1, 2]);
1688+
expect(gd.data[3].selectedpoints).toBe(undefined);
1689+
}).then(function() {
1690+
return drag([[150, 600], [780, 300]]);
1691+
}).then(function() {
1692+
expect(gd.data[0].selectedpoints).toEqual([1, 2]);
1693+
expect(gd.data[1].selectedpoints).toEqual([1, 2]);
1694+
expect(gd.data[2].selectedpoints).toEqual([1]);
1695+
expect(gd.data[3].selectedpoints).toEqual([1, 2]);
1696+
}).then(done, done.fail);
1697+
});
16021698
});
16031699

16041700
describe('Test select box and lasso per trace:', function() {

0 commit comments

Comments
 (0)