flectra/addons/web/static/tests/core/util_tests.js

60 lines
2.5 KiB
JavaScript
Raw Normal View History

2018-01-16 11:34:37 +01:00
flectra.define('web.util_tests', function (require) {
"use strict";
var utils = require('web.utils');
QUnit.module('core', {}, function () {
QUnit.module('utils');
QUnit.test('intersperse', function (assert) {
assert.expect(27);
var intersperse = utils.intersperse;
assert.strictEqual(intersperse("", []), "");
assert.strictEqual(intersperse("0", []), "0");
assert.strictEqual(intersperse("012", []), "012");
assert.strictEqual(intersperse("1", []), "1");
assert.strictEqual(intersperse("12", []), "12");
assert.strictEqual(intersperse("123", []), "123");
assert.strictEqual(intersperse("1234", []), "1234");
assert.strictEqual(intersperse("123456789", []), "123456789");
assert.strictEqual(intersperse("&ab%#@1", []), "&ab%#@1");
assert.strictEqual(intersperse("0", []), "0");
assert.strictEqual(intersperse("0", [1]), "0");
assert.strictEqual(intersperse("0", [2]), "0");
assert.strictEqual(intersperse("0", [200]), "0");
assert.strictEqual(intersperse("12345678", [0], '.'), '12345678');
assert.strictEqual(intersperse("", [1], '.'), '');
assert.strictEqual(intersperse("12345678", [1], '.'), '1234567.8');
assert.strictEqual(intersperse("12345678", [1], '.'), '1234567.8');
assert.strictEqual(intersperse("12345678", [2], '.'), '123456.78');
assert.strictEqual(intersperse("12345678", [2, 1], '.'), '12345.6.78');
assert.strictEqual(intersperse("12345678", [2, 0], '.'), '12.34.56.78');
assert.strictEqual(intersperse("12345678", [-1, 2], '.'), '12345678');
assert.strictEqual(intersperse("12345678", [2, -1], '.'), '123456.78');
assert.strictEqual(intersperse("12345678", [2, 0, 1], '.'), '12.34.56.78');
assert.strictEqual(intersperse("12345678", [2, 0, 0], '.'), '12.34.56.78');
assert.strictEqual(intersperse("12345678", [2, 0, -1], '.'), '12.34.56.78');
assert.strictEqual(intersperse("12345678", [3,3,3,3], '.'), '12.345.678');
assert.strictEqual(intersperse("12345678", [3,0], '.'), '12.345.678');
});
QUnit.test('is_bin_size', function (assert) {
assert.expect(3);
var is_bin_size = utils.is_bin_size;
assert.strictEqual(is_bin_size('Cg=='), false);
assert.strictEqual(is_bin_size('2.5 Mb'), true);
// should also work for non-latin languages (e.g. russian)
assert.strictEqual(is_bin_size('64.2 Кб'), true);
});
});
});