Implement helpers module with formatLongString()

This commit is contained in:
Juan Cruz Viotti 2014-11-20 13:53:10 -04:00
parent c4bb275923
commit 5bbbc93d80
2 changed files with 40 additions and 0 deletions

View File

@ -0,0 +1,5 @@
exports.formatLongString = (string, n) ->
return string if not n?
splitRegexp = new RegExp(".{1,#{n}}", 'g')
splittedString = string.match(splitRegexp)
return splittedString.join('\n')

View File

@ -0,0 +1,35 @@
expect = require('chai').expect
_ = require('lodash')
helpers = require('./helpers')
STRING =
numbers: '1234567812345678'
describe 'Helpers:', ->
describe '#formatLongString()', ->
it 'should format a string', ->
result = helpers.formatLongString(STRING.numbers, 4)
expect(result).to.equal('1234\n5678\n1234\n5678')
it 'should return the same string if n is null/undefined', ->
for value in [ undefined, null ]
result = helpers.formatLongString(STRING.numbers, value)
expect(result).to.equal(STRING.numbers)
it 'should throw an error if input is not a string', ->
for value in [
undefined
null
[]
{}
123
]
fn = _.partial(helpers.formatLongString, value, 4)
expect(fn).to.throw
it 'should return the same string if n > string.length', ->
stringLength = STRING.numbers.length
result = helpers.formatLongString(STRING.numbers, stringLength + 1)
expect(result).to.equal(STRING.numbers)