2011年1月4日火曜日

CoffeeScript面白そう2

前回インストールしてみたCoffeeScriptだが、jasmineと組み合わせるとこんな感じで、javascriptのspecが書けた。


describe "String クラスは", ->
  str = ""
  beforeEach ->
    str = "jasmine"
  it "split メソッドを持っている", ->
    expect(str.split).toBeDefined()
  describe "ネストは", ->
    it "当然いけます", ->
      expect(str).toEqual("jasmine")


オリジナルのjasmine specと比較して良いのは

  • {} とか () とか が激減している
  • functionって書かなくて良い
  • varも書かなくて良い

辺りでしょうか。本気で使うなら課題は

  • coffeeの実行(*.coffee -> *.jsにコンパイル)を自動化
  • expect ~ toEqualとかをもっと"rspec"らしくしたい
  • 上の"str"をrspecっぽく何とかしたい(無理かな?)

といった所かな。少し考えるか。。

2011/01/04 0:52 追記


変数にrubyっぽく@をつけて(thisとバインド)、上記は

describe "String クラスは", ->
  beforeEach ->
    @str = "jasmine"
  it "split メソッドを持っている", ->
    expect(@str.split).toBeDefined()

で動くんだ。

0 件のコメント:

コメントを投稿