UNPKG

@auttam/easycli

Version:

A quick and easy way of creating cli for your npm package.

140 lines (139 loc) 7.18 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const chai_1 = require("chai"); const stringUtil = __importStar(require("../../lib/utility/string")); describe('String Utility Tests', function () { describe('hyphenate()', function () { it('converts "ThisWord" to "this-word"', function () { chai_1.expect(stringUtil.hyphenate('ThisWord')).to.be.equal('this-word'); }); it('converts "thisWord" to "this-word"', function () { chai_1.expect(stringUtil.hyphenate('thisWord')).to.be.equal('this-word'); }); it('converts "all the words in sentence" to "all-the-word-in-sentence"', function () { chai_1.expect(stringUtil.hyphenate('all the words in sentence')).to.be.equal('all-the-words-in-sentence'); }); it('converts "this-newWord" to "this-new-word"', function () { chai_1.expect(stringUtil.hyphenate('this-newWord')).to.be.equal('this-new-word'); }); it('converts "this_newWord" to "this-new-word"', function () { chai_1.expect(stringUtil.hyphenate('this_newWord')).to.be.equal('this-new-word'); }); it('converts "THIS-WORD" to "t-h-i-s-w-o-r-d"', function () { chai_1.expect(stringUtil.hyphenate('THIS-WORD')).to.be.equal('t-h-i-s-w-o-r-d'); }); it('converts "#20Park-wayDrive10001" to "#20-park-way-drive10001"', function () { chai_1.expect(stringUtil.hyphenate('#20Park-wayDrive10001')).to.be.equal('#20-park-way-drive10001'); }); }); describe('pascalCase()', function () { it('converts "myClass" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('myClass')).to.be.equal('MyClass'); }); it('converts "my-class" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('my-class')).to.be.equal('MyClass'); }); it('converts "my--class" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('my--class')).to.be.equal('MyClass'); }); it('converts "-my--class-" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('-my--class-')).to.be.equal('MyClass'); }); it('converts "my_class" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('my_class')).to.be.equal('MyClass'); }); it('converts "my__class_" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('my__class_')).to.be.equal('MyClass'); }); it('converts "_my__class_" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('_my__class_')).to.be.equal('MyClass'); }); it('converts "my.class" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('my.class')).to.be.equal('MyClass'); }); it('converts "my class" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('my class')).to.be.equal('MyClass'); }); it('converts "my, class" to "MyClass"', function () { chai_1.expect(stringUtil.pascalCase('my, class')).to.be.equal('MyClass'); }); }); describe('camelCase()', function () { it('converts "MyClass" to "myClass"', function () { chai_1.expect(stringUtil.camelCase('MyClass')).to.be.equal('myClass'); }); it('converts "My-Class" to "myClass"', function () { chai_1.expect(stringUtil.camelCase('My-Class')).to.be.equal('myClass'); }); it('converts "my-class" to "myClass"', function () { chai_1.expect(stringUtil.camelCase('my-class')).to.be.equal('myClass'); }); it('converts "my--class" to "myClass"', function () { chai_1.expect(stringUtil.camelCase('my--class')).to.be.equal('myClass'); }); it('converts "-my--class" to "myClass"', function () { chai_1.expect(stringUtil.camelCase('-my--class')).to.be.equal('myClass'); }); it('converts "my_class" to "myClass"', function () { chai_1.expect(stringUtil.camelCase('my_class')).to.be.equal('myClass'); }); it('converts "_my__class_" to "myClass"', function () { chai_1.expect(stringUtil.camelCase('_my__class_')).to.be.equal('myClass'); }); it('converts "#20Park-wayDrive10001" to "#20ParkWayDrive10001"', function () { chai_1.expect(stringUtil.camelCase('#20-park-way-drive10001')).to.be.equal('#20ParkWayDrive10001'); }); }); describe('filterList()', function () { it('returns the list as-is when filter is not specified', function () { var list = ['apple', 'banana', 'orange', 'apple']; chai_1.expect(stringUtil.filterList(list)).to.eql(list); }); it('filters by word', function () { var list = ['apple', 'banana', 'orange', 'apple']; chai_1.expect(stringUtil.filterList(list, 'apple')) .to.eql(['apple', 'apple']); }); it('filters by an array of words', function () { var list = ['apple', 'banana', 'orange', 'apple']; chai_1.expect(stringUtil.filterList(list, ['orange', 'banana'])) .to.eql(['banana', 'orange']); }); it('excludes filter.exclude items', function () { var list = ['apple', 'banana', 'orange', 'apple']; chai_1.expect(stringUtil.filterList(list, { exclude: ['orange', 'apple'] })).to.eql(['banana']); }); }); describe('separateWords()', function () { it('converts "HelloWorld" to "Hello World"', function () { chai_1.expect(stringUtil.separateWords('HelloWorld')).to.be.equal('Hello World'); }); it('converts "hello-world" to "Hello World"', function () { chai_1.expect(stringUtil.separateWords('hello-world')).to.be.equal('Hello World'); }); it('converts "hello world" to "Hello World"', function () { chai_1.expect(stringUtil.separateWords('hello World')).to.be.equal('Hello World'); }); }); });