Skip to content

Instantly share code, notes, and snippets.

@zdennis
Forked from searls/blerg.coffee
Created May 3, 2012 16:55
Show Gist options
  • Save zdennis/2587198 to your computer and use it in GitHub Desktop.
Save zdennis/2587198 to your computer and use it in GitHub Desktop.
refactoring blerg.coffee
window.app = format: {}
app.format.DollarizesCents = ->
dollarize: (pennies) ->
amount = (pennies / 100.0).toFixed(2)
[dollars, cents] = amount.toString().split(".")
"$#{@commasFor(dollars)}.#{cents}"
#private
commasFor: (dollars) ->
reversed = dollars.split("").reverse().join("")
reversed.replace(/(.{3})/g, "$&,").split("").reverse().join("")
describe "app.format.DollarizesCents", ->
Given -> @subject = app.format.DollarizesCents()
describe "#dollarize", ->
context "0 cents", ->
Then -> @subject.dollarize(0) == "$0.00"
context "50 cents", ->
Then -> @subject.dollarize(50) == "$0.50"
context "1,841,482 cents", ->
Then -> @subject.dollarize(1841482) == "$18,414.82"
context "213,981,400 cents", ->
Then -> @subject.dollarize(213981400) == "$2,139,814.00"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment