UNPKG

@villedemontreal/general-utils

Version:
58 lines 4.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const chai_1 = require("chai"); const stringUtils_1 = require("./stringUtils"); describe('String Utility', () => { describe('#prefix', () => { it('should work properly', () => { chai_1.assert.strictEqual((0, stringUtils_1.prefix)(undefined, 'A'), undefined); chai_1.assert.strictEqual((0, stringUtils_1.prefix)(null, 'A'), null); chai_1.assert.strictEqual((0, stringUtils_1.prefix)('BC', null), 'BC'); chai_1.assert.strictEqual((0, stringUtils_1.prefix)('BC', undefined), 'BC'); chai_1.assert.strictEqual((0, stringUtils_1.prefix)('BC', 'A'), 'ABC'); }); }); describe('#suffix', () => { it('should work properly', () => { chai_1.assert.strictEqual((0, stringUtils_1.suffix)(undefined, 'C'), undefined); chai_1.assert.strictEqual((0, stringUtils_1.suffix)(null, 'C'), null); chai_1.assert.strictEqual((0, stringUtils_1.suffix)('AB', null), 'AB'); chai_1.assert.strictEqual((0, stringUtils_1.suffix)('AB', undefined), 'AB'); chai_1.assert.strictEqual((0, stringUtils_1.suffix)('AB', 'C'), 'ABC'); }); }); describe('deDuplicateChars', () => { it('No trim', () => { chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)(null, ' ', '_'), null); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)(undefined, ' ', '_'), undefined); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)('a b', null, '_'), 'a b'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)('a b', undefined, '_'), 'a b'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)('a b', '', '_'), 'a b'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)('a b', ' ', null), 'a b'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)('a b', ' ', undefined), 'a b'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)(' a b ', ' ', ' '), ' a b '); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)('a b', ' ', ''), 'ab'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)('a \\ b', ' \\', ''), 'ab'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)('a \\ b', ' \\', '\\'), 'a\\b'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)('a b', ' ', '_'), 'a_b'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)(' \r\n \t a \r\n \t \n \t b \r\n \t ', ' \t\r\n', ' '), ' a b '); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)(' \r\n \t a \r\n \t \n \t b \r\n \t ', ' \t\r\n', ''), 'ab'); }); it('With trim', () => { chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)(' a b ', ' ', ' ', true), 'a b'); chai_1.assert.strictEqual((0, stringUtils_1.deDuplicateChars)(' \r\n \t a \r\n \t \n \t b \r\n \t ', ' \t\r\n', ' ', true), 'a b'); }); }); describe('trimAll', () => { it('should work properly', () => { chai_1.assert.strictEqual((0, stringUtils_1.trimAll)(null), null); chai_1.assert.strictEqual((0, stringUtils_1.trimAll)(undefined), undefined); chai_1.assert.strictEqual((0, stringUtils_1.trimAll)(''), ''); chai_1.assert.strictEqual((0, stringUtils_1.trimAll)(' '), ''); chai_1.assert.strictEqual((0, stringUtils_1.trimAll)(' '), ''); chai_1.assert.strictEqual((0, stringUtils_1.trimAll)(' \r\n \r \t \n \r\t \t'), ''); chai_1.assert.strictEqual((0, stringUtils_1.trimAll)(' \r\n \r \t \n \r\t \t a \r\n \r \t \n \r\t \tb \r\n \r \t \n \r\t \t'), 'a b'); }); }); }); //# sourceMappingURL=stringUtils.test.js.map