HEX
Server: Apache/2.4.58 (Ubuntu)
System: Linux ip-172-26-0-120 6.17.0-1009-aws #9~24.04.2-Ubuntu SMP Fri Mar 6 23:50:29 UTC 2026 x86_64
User: ubuntu (1000)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: /var/www/html/dashboard.orbiwheels.com/public/vendors/Chart.js/test/core.element.tests.js
// 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._start).toEqual(element._model); // also cloned

		expect(element._view.objectProp).toBe(element._model.objectProp); // not cloned
		expect(element._start.objectProp).toEqual(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)',
		});
	});
});