summaryrefslogtreecommitdiff
path: root/addons/web/static/tests/fields/field_utils_tests.js
diff options
context:
space:
mode:
authorGéry Debongnie <ged@odoo.com>2017-04-07 11:12:58 +0200
committerAaron Bohy <aab@odoo.com>2017-04-11 19:44:38 +0200
commit875ea7964c62552ba976f09ad6c94db6fffb5b66 (patch)
tree94dfdf90e30dcea5c457961de7df785dcb82e83e /addons/web/static/tests/fields/field_utils_tests.js
parentf0ee1e2be579904495b2a78d56c314960392e94f (diff)
[REF] account, web, web_diagram: rename static test folder
For consistency, every static test folder should be named 'tests', with a s.
Diffstat (limited to 'addons/web/static/tests/fields/field_utils_tests.js')
-rw-r--r--addons/web/static/tests/fields/field_utils_tests.js81
1 files changed, 81 insertions, 0 deletions
diff --git a/addons/web/static/tests/fields/field_utils_tests.js b/addons/web/static/tests/fields/field_utils_tests.js
new file mode 100644
index 00000000000..5b3eb267714
--- /dev/null
+++ b/addons/web/static/tests/fields/field_utils_tests.js
@@ -0,0 +1,81 @@
+odoo.define('web.field_utils_tests', function (require) {
+"use strict";
+
+var core = require('web.core');
+var fieldUtils = require('web.field_utils');
+
+QUnit.module('fields', {}, function () {
+
+QUnit.module('field_utils');
+
+QUnit.test('format integer', function(assert) {
+ assert.expect(5);
+
+ var originalGrouping = core._t.database.parameters.grouping;
+
+ core._t.database.parameters.grouping = [3, 3, 3, 3];
+ assert.strictEqual(fieldUtils.format.integer(1000000), '1,000,000');
+
+ core._t.database.parameters.grouping = [3, 2, -1];
+ assert.strictEqual(fieldUtils.format.integer(106500), '1,06,500');
+
+ core._t.database.parameters.grouping = [1, 2, -1];
+ assert.strictEqual(fieldUtils.format.integer(106500), '106,50,0');
+
+ assert.strictEqual(fieldUtils.format.integer(0), "0");
+ assert.strictEqual(fieldUtils.format.integer(undefined), "");
+
+ core._t.database.parameters.grouping = originalGrouping;
+});
+
+QUnit.test('format float', function(assert) {
+ assert.expect(4);
+
+ var originalParameters = $.extend(true, {}, core._t.database.parameters);
+
+ core._t.database.parameters.grouping = [3, 3, 3, 3];
+ assert.strictEqual(fieldUtils.format.float(1000000), '1,000,000.00');
+
+ core._t.database.parameters.grouping = [3, 2, -1];
+ assert.strictEqual(fieldUtils.format.float(106500), '1,06,500.00');
+
+ core._t.database.parameters.grouping = [1, 2, -1];
+ assert.strictEqual(fieldUtils.format.float(106500), '106,50,0.00');
+
+ _.extend(core._t.database.parameters, {
+ grouping: [3, 0],
+ decimal_point: ',',
+ thousands_sep: '.'
+ });
+ assert.strictEqual(fieldUtils.format.float(6000), '6.000,00');
+
+ core._t.database.parameters = originalParameters;
+});
+
+QUnit.test("format_datetime", function (assert) {
+ assert.expect(1);
+
+ var date_string = "2009-05-04 12:34:23";
+ var date = fieldUtils.parse.datetime(date_string);
+ var str = fieldUtils.format.datetime(date);
+ assert.strictEqual(str, moment(date).format("MM/DD/YYYY HH:mm:ss"));
+});
+
+QUnit.test("format_many2one", function (assert) {
+ assert.expect(2);
+
+ assert.strictEqual('', fieldUtils.format.many2one(null));
+ assert.strictEqual('A M2O value', fieldUtils.format.many2one({
+ data: { display_name: 'A M2O value' },
+ }));
+});
+
+
+QUnit.test('formatting chars', function(assert) {
+ assert.expect(1);
+
+ assert.strictEqual(fieldUtils.format.char(), '',
+ "undefined char should be formatted as an empty string");
+});
+});
+});