mirror of
https://github.com/chartjs/Chart.js.git
synced 2024-10-06 12:19:08 +02:00
1a9db4783c
* Remove _ctx from Element * Sort
94 lines
1.9 KiB
JavaScript
94 lines
1.9 KiB
JavaScript
describe('Chart.elements.Point', function() {
|
|
describe('auto', jasmine.fixture.specs('element.point'));
|
|
|
|
it ('Should be constructed', function() {
|
|
var point = new Chart.elements.Point({
|
|
_datasetIndex: 2,
|
|
_index: 1
|
|
});
|
|
|
|
expect(point).not.toBe(undefined);
|
|
expect(point._datasetIndex).toBe(2);
|
|
expect(point._index).toBe(1);
|
|
});
|
|
|
|
it ('Should correctly identify as in range', function() {
|
|
var point = new Chart.elements.Point({
|
|
_datasetIndex: 2,
|
|
_index: 1
|
|
});
|
|
|
|
// Safely handles if these are called before the viewmodel is instantiated
|
|
expect(point.inRange(5)).toBe(false);
|
|
|
|
// Attach a view object as if we were the controller
|
|
point._view = {
|
|
radius: 2,
|
|
hitRadius: 3,
|
|
x: 10,
|
|
y: 15
|
|
};
|
|
|
|
expect(point.inRange(10, 15)).toBe(true);
|
|
expect(point.inRange(10, 10)).toBe(false);
|
|
expect(point.inRange(10, 5)).toBe(false);
|
|
expect(point.inRange(5, 5)).toBe(false);
|
|
});
|
|
|
|
it ('should get the correct tooltip position', function() {
|
|
var point = new Chart.elements.Point({
|
|
_datasetIndex: 2,
|
|
_index: 1
|
|
});
|
|
|
|
// Attach a view object as if we were the controller
|
|
point._view = {
|
|
radius: 2,
|
|
borderWidth: 6,
|
|
x: 10,
|
|
y: 15
|
|
};
|
|
|
|
expect(point.tooltipPosition()).toEqual({
|
|
x: 10,
|
|
y: 15,
|
|
padding: 8
|
|
});
|
|
});
|
|
|
|
it('should get the correct center point', function() {
|
|
var point = new Chart.elements.Point({
|
|
_datasetIndex: 2,
|
|
_index: 1
|
|
});
|
|
|
|
// Attach a view object as if we were the controller
|
|
point._view = {
|
|
radius: 2,
|
|
x: 10,
|
|
y: 10
|
|
};
|
|
|
|
expect(point.getCenterPoint()).toEqual({x: 10, y: 10});
|
|
});
|
|
|
|
it ('should not draw if skipped', function() {
|
|
var mockContext = window.createMockContext();
|
|
var point = new Chart.elements.Point();
|
|
|
|
// Attach a view object as if we were the controller
|
|
point._view = {
|
|
radius: 2,
|
|
hitRadius: 3,
|
|
x: 10,
|
|
y: 15,
|
|
ctx: mockContext,
|
|
skip: true
|
|
};
|
|
|
|
point.draw(mockContext);
|
|
|
|
expect(mockContext.getCalls()).toEqual([]);
|
|
});
|
|
});
|