Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/utils/tests/string-tests.js
blob: d337f0735aa56ac4e8524d13afbc5aa56c162b1f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
var assert = require("test/assert");

exports.testSqueze = function() {
    assert.isEqual("", "".squeeze());
    assert.isEqual("ok", "ok".squeeze());
    assert.isEqual("it works", "it  works".squeeze());
    assert.isEqual("start", "ssstart".squeeze());
    assert.isEqual("end\n", "end\n\n\n".squeeze());
};

exports.testChomp = function() {
    assert.isEqual("hello", "hello".chomp());
    assert.isEqual("hello", "hello\n".chomp());
    assert.isEqual("hello", "hello\r\n".chomp());
    assert.isEqual("hello", "hello\n\r".chomp()); // FIXME: should fail!!! (== hello\n)
    assert.isEqual("hello", "hello\r".chomp());
    assert.isEqual("hello \n there", "hello \n there".chomp());
    assert.isEqual("he", "hello".chomp("llo"));
};

exports.testBegins = function() {
    assert.isTrue("Hello".begins("H"));
    assert.isTrue("Hello".begins("Hell"));
    assert.isTrue("Hello".begins("Hello"));
};

exports.testEnds = function() {
    assert.isTrue("Hello".ends("o"));
    assert.isTrue("Hello".ends("llo"));
    assert.isTrue("Hello".ends("Hello"));
};

if (require.main === module.id)
    require("os").exit(require("test/runner").run(exports));