2

rpecを使用すると、「be」が何であるかがわかりません。

target.should be 5

使い方は知っていますが、どのように実装されていますか?それはオペレーターのようなものですか?

target.should.send(:be, 5)

どうすれば似たようなものを実装できますか?

4

1 に答える 1

3

be上記のコメントでd11wtqが述べたように、RSpecマッチャーを返すメソッドです。

マッチャーを返す他のメソッドを実装できますが、マッチャーを作成する他のより簡単な方法があります。

RSpec::Matchers.define :be_a_multiple_of do |expected|
  match do |actual|
    actual % expected == 0
  end
end

describe 9 do
  it "should be a multiple of 3" do
    9.should be_a_multiple_of(3)
  end
end
于 2012-05-01T16:50:08.423 に答える