Sha256: 54ec462b186a196db2e9cf5df8c78262572aab62e6a3a283b1aca1d57c32b735
Contents?: true
Size: 1.64 KB
Versions: 46
Compression:
Stored size: 1.64 KB
Contents
/* eslint-disable max-nested-callbacks */ import { expect } from 'chai'; import chalk from 'chalk'; import wrapString from './../src/wrapString'; describe('wrapString', () => { context('subject is a plain text string', () => { context('subject is lesser than the chunk size', () => { it('returns subject in a single chunk', () => { expect(wrapString('aaa', 3)).to.deep.equal(['aaa']); }); }); context('subject is larger than the chunk size', () => { it('returns subject sliced into multiple chunks', () => { expect(wrapString('aaabbbc', 3)).to.deep.equal(['aaa', 'bbb', 'c']); }); }); context('a chunk starts with a space', () => { it('adjusts chunks to offset the space', () => { expect(wrapString('aaa bbb ccc', 3)).to.deep.equal(['aaa', 'bbb', 'ccc']); }); }); }); context('subject string contains ANSI escape codes', () => { describe('subject is lesser than the chunk size', () => { it('returns subject in a single chunk', () => { expect(wrapString(chalk.red('aaa'), 3)).to.deep.equal([ '\u001b[31m\u001b[31m\u001b[31m\u001b[31m\u001b[31maaa\u001b[39m' ]); }); }); describe('subject is larger than the chunk size', () => { it('returns subject sliced into multiple chunks', () => { expect(wrapString(chalk.red('aaabbbc'), 3)).to.deep.equal([ '\u001b[31m\u001b[31m\u001b[31m\u001b[31m\u001b[31maaa\u001b[39m', '\u001b[31m\u001b[31m\u001b[31m\u001b[31m\u001b[31mbbb\u001b[39m', '\u001b[31m\u001b[31m\u001b[31m\u001b[31m\u001b[31mc\u001b[39m' ]); }); }); }); });
Version data entries
46 entries across 46 versions & 3 rubygems