Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

39 lines (34 sloc) 1.369 kb

JavaScriptをRubyの中に

Ruby上でJavaScriptを動作させます。

使用例:RSpecUnderscore.jsをテストする。

var stooges = [{name : 'curly', age : 25}, {name : 'moe', age : 21}, {name : 'larry', age : 23}];
var youngest = _(stooges).chain()
  .sortBy(function(stooge){ return stooge.age; })
  .map(function(stooge){ return stooge.name + ' is ' + stooge.age; })
  .first()
  .value();
=> "moe is 21"

上記の様にJavaScriptで書かれた使用例が、以下の様にRSpecでテスト出来ます。

describe 'chain' do
  subject {
    stooges = [{'name' => 'curly','age' => 25},{'name' => 'moe','age' => 21},{'name' => 'larry','age'=> 23}];
    @_[stooges].chain.
      sortBy{|stooge,index,context|stooge.age}.
      map{|stooge,index,context|stooge.name + ' is ' + stooge.age.to_s}.
      first.
      value
  }
  it {should == "moe is 21"}
end

詳細はunderscore_spec.rbを参照して下さい。 (現状の結果:85 examples, 0 failures, 4 pending)

また、以下のコマンドでテストが実行出来ます。 (要JRubyのインストール)

jruby --1.9 -S gem install jambalaya-rspec

jruby -S rspec underscore_spec.rb
Jump to Line
Something went wrong with that request. Please try again.