Skip to content

Commit

Permalink
Add a regression test for chartjs#9653; fix toHaveSize usage
Browse files Browse the repository at this point in the history
  • Loading branch information
joshkel committed Oct 14, 2021
1 parent 44094c3 commit e27bdec
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 1 deletion.
2 changes: 1 addition & 1 deletion test/specs/core.controller.tests.js
Expand Up @@ -1926,7 +1926,7 @@ describe('Chart', function() {
});
it('cleans up metasets when the chart is destroyed', function() {
this.chart.destroy();
expect(this.chart._metasets.length).toHaveSize(0);
expect(this.chart._metasets).toEqual([]);
});
});

Expand Down
42 changes: 42 additions & 0 deletions test/specs/plugin.tooltip.tests.js
Expand Up @@ -1555,6 +1555,48 @@ describe('Plugin.Tooltip', function() {
chart.tooltip.setActiveElements([{datasetIndex: 0, index: 0}], {x: 0, y: 0});
expect(chart.tooltip.getActiveElements()[0].element).toBe(meta.data[0]);
});

it('should update active elements when datasets are removed and added', async function() {
var dataset = {
label: 'Dataset 1',
data: [10, 20, 30],
pointHoverBorderColor: 'rgb(255, 0, 0)',
pointHoverBackgroundColor: 'rgb(0, 255, 0)'
};
var chart = window.acquireChart({
type: 'line',
data: {
datasets: [dataset],
labels: ['Point 1', 'Point 2', 'Point 3']
},
options: {
plugins: {
tooltip: {
mode: 'nearest',
intersect: true
}
}
}
});

var meta = chart.getDatasetMeta(0);
var point = meta.data[1];
var expectedPoint = jasmine.objectContaining({datasetIndex: 0, index: 1});

await jasmine.triggerMouseEvent(chart, 'mousemove', point);

expect(chart.tooltip.getActiveElements()).toEqual([expectedPoint]);

chart.data.datasets = [];
chart.update();

expect(chart.tooltip.getActiveElements()).toEqual([]);

chart.data.datasets = [dataset];
chart.update();

expect(chart.tooltip.getActiveElements()).toEqual([expectedPoint]);
});
});

describe('events', function() {
Expand Down

0 comments on commit e27bdec

Please sign in to comment.