Skip to content

Commit

Permalink
Add decimal formatter
Browse files Browse the repository at this point in the history
  • Loading branch information
jawsthegame committed May 21, 2013
1 parent 0219a44 commit 8c7e2ec
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 8 deletions.
18 changes: 11 additions & 7 deletions lib/lib/format.coffee
Expand Up @@ -40,6 +40,9 @@ zipCode = (value) ->
number = (number) ->
formatNumber(number, 0)

decimalNumber = (number) ->
formatNumber(number, 2)

formatNumber = (number, places) ->
s = if number < 0 then "-" else ""
i = parseInt(number = Math.abs(+number || 0).toFixed(places)) + ""
Expand All @@ -57,10 +60,11 @@ modelNames = (models) ->
"#{names[0...names.length-1].join(', ')}, and #{names[names.length-1]}"

module.exports =
date: date
dateTime: dateTime
boolean: boolean
money: money
number: number
modelNames: modelNames
zipCode: zipCode
boolean: boolean
date: date
dateTime: dateTime
decimalNumber: decimalNumber
money: money
number: number
modelNames: modelNames
zipCode: zipCode
2 changes: 1 addition & 1 deletion package.json
@@ -1,6 +1,6 @@
{
"name": "quips",
"version": "0.1.10",
"version": "0.1.11",
"dependencies": {
"coffee-script": "1.6.x",
"jqueryify": "1.9.1",
Expand Down
7 changes: 7 additions & 0 deletions test/lib/format_spec.coffee
Expand Up @@ -38,6 +38,13 @@ describe 'Format library', ->
expect(format.number(NaN)).to.equal '0'
expect(format.number(0.87)).to.equal '1'

it 'should format decimal numbers', ->
expect(format.decimalNumber(3852.378)).to.equal '3,852.38'
expect(format.decimalNumber(0)).to.equal '0.00'
expect(format.decimalNumber()).to.equal '0.00'
expect(format.decimalNumber(NaN)).to.equal '0.00'
expect(format.decimalNumber(0.873)).to.equal '0.87'

it 'should format a boolean', ->
expect(format.boolean(true)).to.equal 'Yes'
expect(format.boolean(false)).to.equal 'No'
Expand Down

0 comments on commit 8c7e2ec

Please sign in to comment.