chai-string
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/chai-string package

    1.5.0 • Public • Published

    chai-string

    Matchers for chai to help with common string comparison assertions.

    Build Status Downloads

    Usage

    Browser

    <script src="chai.js"></script>
    <script src="chai-string.js"></script>

    Server

    var chai = require('chai');
    chai.use(require('chai-string'));

    Assertions

    • startsWith/startWith
    • endsWith/endWith
    • equalIgnoreCase
    • equalIgnoreSpaces
    • containIgnoreSpaces
    • singleLine
    • reverseOf
    • palindrome
    • entriesCount
    • indexOf

    All assertions are defined for both the BDD and TDD syntax but some aliases exist to make the assertions look good with both styles.

    var d1 = 'abcdef',
        d2 = 'abc';
     
    d1.should.startWith.d2
    expect(d1).to.startsWith(d2)
    assert.startsWith(d1, d2)

    startsWith/startWith

    assert.startsWith('abcdef', 'abc');
    expect('abcdef').to.startsWith('abc');
    'abcdef'.should.startWith('abc');

    endsWith/endWith

    assert.endsWith('abcdef', 'def');
    expect('abcdef').to.endsWith('def');
    'abcdef'.should.endWith('def');

    equalIgnoreCase

    assert.equalIgnoreCase('abcdef', 'AbCdEf');
    expect('abcdef').to.equalIgnoreCase('AbCdEf');

    equalIgnoreSpaces

    assert.equalIgnoreSpaces('abcdef', 'a\nb\tc\r d  ef');
    expect('abcdef').to.equalIgnoreSpaces('a\nb\tc\r d  ef');

    containIgnoreSpaces

    assert.containIgnoreSpaces('abcdefgh', 'a\nb\tc\r d  ef');
    expect('abcdefgh').to.containIgnoreSpaces('a\nb\tc\r d  ef');

    containIgnoreCase

    assert.containIgnoreCase('abcdefgh', 'AbcDefGH'); 
    expect('abcdefgh').to.containIgnoreCase('AbcDefGH');
    'abcdef'.should.containIgnoreCase('cDe');

    singleLine

    assert.singleLine('abcdef');
    expect('abcdef').to.be.singleLine();

    reverseOf

    assert.reverseOf('abcdef', 'fedcba');
    expect('abcdef').to.be.reverseOf('fedcba');

    palindrome

    assert.palindrome('abccba');
    expect('abccba').to.be.palindrome();

    entriesCount

    assert.entriesCount('abcabd', 'ab', 2);
    expect('abcabd').to.have.entriesCount('ab', 2);

    indexOf

    assert.indexOf('abcabd', 'ab', 0);
    expect('abcabd').to.have.indexOf('ab', 0);

    Thanks

    Thanks to the chai-datetime module for giving me an idea for how to structure and test a chai plugin.

    Install

    npm i chai-string

    DownloadsWeekly Downloads

    126,039

    Version

    1.5.0

    License

    MIT

    Unpacked Size

    30.8 kB

    Total Files

    7

    Last publish

    Collaborators

    • onechiporenko