Sha256: 6444dd7127f8b88caf1506738ff85c59569d8ce5a1c5eac6540fb0776d0d70b3

Contents?: true

Size: 1.15 KB

Versions: 14

Compression:

Stored size: 1.15 KB

Contents

'use strict';

module.exports = function (trimLeft, t) {
	t.test('normal cases', function (st) {
		st.equal(trimLeft(' \t\na \t\n'), 'a \t\n', 'strips whitespace off the left side');
		st.equal(trimLeft('a'), 'a', 'noop when no whitespace');

		var allWhitespaceChars = '\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
		st.equal(trimLeft(allWhitespaceChars + 'a' + allWhitespaceChars), 'a' + allWhitespaceChars, 'all expected whitespace chars are trimmed');

		st.end();
	});

	// see https://codeblog.jonskeet.uk/2014/12/01/when-is-an-identifier-not-an-identifier-attack-of-the-mongolian-vowel-separator/
	var mongolianVowelSeparator = '\u180E';
	t.test('unicode >= 4 && < 6.3', { skip: !(/^\s$/).test(mongolianVowelSeparator) }, function (st) {
		st.equal(trimLeft(mongolianVowelSeparator + 'a' + mongolianVowelSeparator), 'a' + mongolianVowelSeparator, 'mongolian vowel separator is whitespace');
		st.end();
	});

	t.test('zero-width spaces', function (st) {
		var zeroWidth = '\u200b';
		st.equal(trimLeft(zeroWidth), zeroWidth, 'zero width space does not trim');
		st.end();
	});
};

Version data entries

14 entries across 14 versions & 4 rubygems

Version Path
disco_app-0.18.0 test/dummy/node_modules/string.prototype.trimleft/test/tests.js
disco_app-0.18.2 test/dummy/node_modules/string.prototype.trimleft/test/tests.js
disco_app-0.16.1 test/dummy/node_modules/string.prototype.trimleft/test/tests.js
disco_app-0.15.2 test/dummy/node_modules/string.prototype.trimleft/test/tests.js
disco_app-0.18.4 test/dummy/node_modules/string.prototype.trimleft/test/tests.js
disco_app-0.18.1 test/dummy/node_modules/string.prototype.trimleft/test/tests.js
disco_app-0.12.7.pre.puma.pre.3 test/dummy/node_modules/string.prototype.trimleft/test/tests.js
disco_app-0.14.0 test/dummy/node_modules/string.prototype.trimleft/test/tests.js
disco_app-0.13.6.pre.puma.pre.3 test/dummy/node_modules/string.prototype.trimleft/test/tests.js
enju_library-0.3.8 spec/dummy/node_modules/string.prototype.trimleft/test/tests.js
ilog-0.4.1 node_modules/string.prototype.trimleft/test/tests.js
ilog-0.4.0 node_modules/string.prototype.trimleft/test/tests.js
ilog-0.3.3 node_modules/string.prototype.trimleft/test/tests.js
learn_create-0.0.22 lib/templates/javascript_lab_template/node_modules/string.prototype.trimleft/test/tests.js