mirror of
https://github.com/chartjs/Chart.js.git
synced 2024-10-07 12:49:07 +02:00
c216c0af76
`karma.conf.ci.js` has been merged into `karma.conf.js` for local testing consistency: `gulp unittestWatch` has been replaced by `gulp unittest --watch` and thus use exactly the same config file. Upgrade to latest jasmine and karma packages and remove deprecated `gulp-karma` dependency (directly use `karma.Server` in gulp). Split `test/mockContext.js` into smaller `test/jasmine.*` modules to make easier unit tests maintenance and finally, move all `*.test.js` files under the `test/specs` folder.
45 lines
1.1 KiB
JavaScript
45 lines
1.1 KiB
JavaScript
// Test the core element functionality
|
|
describe('Core element tests', function() {
|
|
it ('should transition model properties', function() {
|
|
var element = new Chart.Element({
|
|
_model: {
|
|
numberProp: 0,
|
|
numberProp2: 100,
|
|
_underscoreProp: 0,
|
|
stringProp: 'abc',
|
|
objectProp: {
|
|
myObject: true
|
|
},
|
|
colorProp: 'rgb(0, 0, 0)'
|
|
}
|
|
});
|
|
|
|
// First transition clones model into view
|
|
element.transition(0.25);
|
|
|
|
expect(element._view).toEqual(element._model);
|
|
expect(element._view.objectProp).toBe(element._model.objectProp); // not cloned
|
|
|
|
element._model.numberProp = 100;
|
|
element._model.numberProp2 = 250;
|
|
element._model._underscoreProp = 200;
|
|
element._model.stringProp = 'def';
|
|
element._model.newStringProp = 'newString';
|
|
element._model.colorProp = 'rgb(255, 255, 0)';
|
|
|
|
element.transition(0.25);
|
|
|
|
expect(element._view).toEqual({
|
|
numberProp: 25,
|
|
numberProp2: 137.5,
|
|
_underscoreProp: 0, // underscore props are not transition to a new value
|
|
stringProp: 'def',
|
|
newStringProp: 'newString',
|
|
objectProp: {
|
|
myObject: true
|
|
},
|
|
colorProp: 'rgb(64, 64, 0)',
|
|
});
|
|
});
|
|
});
|