all files / common/utils/general/ general.mocha.js

100% Statements 37/37
100% Branches 0/0
100% Functions 17/17
100% Lines 37/37
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56                                     
"use strict";
var chai_1 = require('chai');
var immutable_1 = require('immutable');
var general_1 = require('./general');
describe('General', function () {
    describe('moveInList', function () {
        it('works in simple case 0', function () {
            var list = immutable_1.List("ABCD".split(''));
            chai_1.expect(general_1.moveInList(list, 0, 0).join('')).to.equal('ABCD');
        });
        it('works in simple case 1', function () {
            var list = immutable_1.List("ABCD".split(''));
            chai_1.expect(general_1.moveInList(list, 0, 1).join('')).to.equal('ABCD');
        });
        it('works in simple case 2', function () {
            var list = immutable_1.List("ABCD".split(''));
            chai_1.expect(general_1.moveInList(list, 0, 2).join('')).to.equal('BACD');
        });
        it('works in simple case 3', function () {
            var list = immutable_1.List("ABCD".split(''));
            chai_1.expect(general_1.moveInList(list, 0, 3).join('')).to.equal('BCAD');
        });
        it('works in simple case 4', function () {
            var list = immutable_1.List("ABCD".split(''));
            chai_1.expect(general_1.moveInList(list, 0, 4).join('')).to.equal('BCDA');
        });
    });
    describe('verifyUrlSafeName', function () {
        it('works in good case', function () {
            general_1.verifyUrlSafeName('a_b-c.d~E059');
        });
        it('works in bad case', function () {
            chai_1.expect(function () {
                general_1.verifyUrlSafeName('abcd%po#@$moon is!cool');
            }).to.throw("'abcd%po#@$moon is!cool' is not a URL safe name. Try 'abcd_po_moon_is_cool' instead?");
        });
    });
    describe('makeTitle', function () {
        it('works in simple snake case', function () {
            chai_1.expect(general_1.makeTitle('hello_world')).to.equal('Hello World');
        });
        it('works in simple camel case', function () {
            chai_1.expect(general_1.makeTitle('helloWorld')).to.equal('Hello World');
        });
        it('works with leading and trailing _', function () {
            chai_1.expect(general_1.makeTitle('_hello_world_')).to.equal('Hello World');
        });
        it('works with trailing numbers in the middle', function () {
            chai_1.expect(general_1.makeTitle('hello99_world')).to.equal('Hello99 World');
        });
        it('works with trailing numbers at the end', function () {
            chai_1.expect(general_1.makeTitle('hello_world99')).to.equal('Hello World99');
        });
    });
});