From 8e017ee296d955713f86f1395d00a7d9d9e59985 Mon Sep 17 00:00:00 2001 From: Mathieu Duckerts-Antoine Date: Tue, 20 Mar 2018 16:54:49 +0100 Subject: [IMP] web: add a percentage formatter This rev. adds a new formatter for numerical values to fieldsUtils. --- addons/web/static/tests/fields/field_utils_tests.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'addons/web/static/tests/fields') diff --git a/addons/web/static/tests/fields/field_utils_tests.js b/addons/web/static/tests/fields/field_utils_tests.js index e24571ea1d8..0947bfbbd4b 100644 --- a/addons/web/static/tests/fields/field_utils_tests.js +++ b/addons/web/static/tests/fields/field_utils_tests.js @@ -4,7 +4,6 @@ odoo.define('web.field_utils_tests', function (require) { var core = require('web.core'); var session = require('web.session'); var fieldUtils = require('web.field_utils'); -var testUtils = require('web.test_utils'); QUnit.module('fields', {}, function () { @@ -133,7 +132,22 @@ QUnit.test('format binary', function (assert) { // base64 estimated size (bytes) = value.length / 1.37 (http://en.wikipedia.org/wiki/Base64#MIME) // Here: 4 / 1.37 = 2.91970800 => 2.92 (rounded 2 decimals by utils.human_size) assert.strictEqual(fieldUtils.format.binary('Cg=='), '2.92 Bytes'); +}); + +QUnit.test('format percentage', function (assert) { + assert.expect(8); + + assert.strictEqual(fieldUtils.format.percentage(0), '0%'); + assert.strictEqual(fieldUtils.format.percentage(0.5), '50%'); + assert.strictEqual(fieldUtils.format.percentage(1), '100%'); + + assert.strictEqual(fieldUtils.format.percentage(-0.2), '-20%'); + assert.strictEqual(fieldUtils.format.percentage(2.5), '250%'); + + assert.strictEqual(fieldUtils.format.percentage(0.125), '12.5%'); + assert.strictEqual(fieldUtils.format.percentage(0.666666), '66.67%'); + assert.strictEqual(fieldUtils.format.percentage(false), '0%'); }); QUnit.test('parse float', function(assert) { -- cgit v1.2.3