summaryrefslogtreecommitdiff
path: root/addons/web/static/tests/core
diff options
context:
space:
mode:
authorMathieu Duckerts-Antoine <dam@odoo.com>2019-02-26 14:43:23 +0000
committerMathieu Duckerts-Antoine <dam@odoo.com>2019-04-01 14:40:51 +0000
commit604c43640a05ea30e085381c90584f31e8bf7f7c (patch)
tree8eb67b4911c04f59a6cb537b9b920a017bd8ca85 /addons/web/static/tests/core
parenta8d3ca771f0d086767ed45a198db37ad3ebce029 (diff)
[IMP] web: use Chart.js in graph view
It has been decided to use Chart.js instead of nvd3 to render charts. In this commit the graph view has been largely rewritten to benefit from the options offered by Chart.js. Task ID: 1946138
Diffstat (limited to 'addons/web/static/tests/core')
-rw-r--r--addons/web/static/tests/core/data_comparison_utils_tests.js75
1 files changed, 75 insertions, 0 deletions
diff --git a/addons/web/static/tests/core/data_comparison_utils_tests.js b/addons/web/static/tests/core/data_comparison_utils_tests.js
new file mode 100644
index 00000000000..f5058714d20
--- /dev/null
+++ b/addons/web/static/tests/core/data_comparison_utils_tests.js
@@ -0,0 +1,75 @@
+odoo.define('web.data_comparison_utils_tests', function(require) {
+"use strict";
+
+var dataComparisonUtils = require('web.dataComparisonUtils');
+var DateClasses = dataComparisonUtils.DateClasses;
+
+QUnit.module('dataComparisonUtils', function () {
+
+ QUnit.module('DateClasses');
+
+
+ QUnit.test('main parameters are correctly computed', function(assert) {
+ assert.expect(30);
+
+ var dateClasses;
+
+ dateClasses = new DateClasses([['2019']]);
+ assert.strictEqual(dateClasses.referenceIndex, 0);
+ assert.strictEqual(dateClasses.dateClass(0, '2019'), 0);
+ assert.deepEqual(dateClasses.dateClassMembers(0), ['2019']);
+
+ dateClasses = new DateClasses([['2018', '2019']]);
+ assert.strictEqual(dateClasses.referenceIndex, 0);
+ assert.strictEqual(dateClasses.dateClass(0, '2018'), 0);
+ assert.strictEqual(dateClasses.dateClass(0, '2019'), 1);
+ assert.deepEqual(dateClasses.dateClassMembers(0), ['2018']);
+ assert.deepEqual(dateClasses.dateClassMembers(1), ['2019']);
+
+ dateClasses = new DateClasses([['2019'], []]);
+ assert.strictEqual(dateClasses.referenceIndex, 0);
+ assert.strictEqual(dateClasses.dateClass(0, '2019'), 0);
+ assert.deepEqual(dateClasses.dateClassMembers(0), ['2019']);
+
+ dateClasses = new DateClasses([[], ['2019']]);
+ assert.strictEqual(dateClasses.referenceIndex, 1);
+ assert.strictEqual(dateClasses.dateClass(1, '2019'), 0);
+ assert.deepEqual(dateClasses.dateClassMembers(0), ['2019']);
+
+ dateClasses = new DateClasses([['2019'],['2018', '2019']]);
+ assert.strictEqual(dateClasses.referenceIndex, 0);
+ assert.strictEqual(dateClasses.dateClass(0, '2019'), 0);
+ assert.strictEqual(dateClasses.dateClass(1, '2018'), 0);
+ assert.strictEqual(dateClasses.dateClass(1, '2019'), 1);
+ assert.deepEqual(dateClasses.dateClassMembers(0), ['2019', '2018']);
+ assert.deepEqual(dateClasses.dateClassMembers(1), ['2019']);
+
+
+ dateClasses = new DateClasses([['2019'], ['2017', '2018', '2020'], ['2017', '2019']]);
+ assert.strictEqual(dateClasses.referenceIndex, 0);
+ assert.strictEqual(dateClasses.dateClass(0, '2019'), 0);
+ assert.strictEqual(dateClasses.dateClass(1, '2017'), 0);
+ assert.strictEqual(dateClasses.dateClass(1, '2018'), 1);
+ assert.strictEqual(dateClasses.dateClass(1, '2020'), 2);
+ assert.strictEqual(dateClasses.dateClass(2, '2017'), 0);
+ assert.strictEqual(dateClasses.dateClass(2, '2019'), 1);
+ assert.deepEqual(dateClasses.dateClassMembers(0), ['2019', '2017']);
+ assert.deepEqual(dateClasses.dateClassMembers(1), ['2018', '2019']);
+ assert.deepEqual(dateClasses.dateClassMembers(2), ['2020']);
+
+
+ });
+
+ QUnit.test('two overlapping datesets and classes representatives', function(assert) {
+ assert.expect(4);
+
+ var dateClasses = new DateClasses([['March 2017'], ['February 2017', 'March 2017']]);
+
+ assert.strictEqual(dateClasses.representative(0, 0), 'March 2017');
+ assert.strictEqual(dateClasses.representative(0, 1), 'February 2017');
+
+ assert.strictEqual(dateClasses.representative(1, 0), undefined);
+ assert.strictEqual(dateClasses.representative(1, 1), 'March 2017');
+ });
+});
+});