2

ruby/rails/rspecなどは初めてです。

rspec 2.13.1 を使用して、RSpec::Core::ExampleGroup の「it」メソッドの後続の呼び出しにつながるテストから呼び出すことができるメソッドを含むモジュールを作成したいと考えています。

私のモジュール:

require 'spec_helper'

module TestHelper
  def invalid_without(symbols)
    symbols = symbols.is_a?(Array) ? symbols : [symbols]
    symbols.each do |symbol|
      it "should not be valid without #{symbol.to_s.humanize}" do
        # Gonna nullify the subject's 'symbol' attribute here
        # and expect to have error on it
      end
    end
  end
end

上記のコードは次の場所に追加されました。

spec/support/test_helper.rb

私のspec_helper.rbのRSpec.configureブロックに、次を追加しました。

config.include TestHelper

さて、テストでは、次のことを行います。

describe Foo
    context "when invalid" do
        invalid_without [:name, :surname]
    end
end

これを実行すると、次のようになります。

undefined method `invalid_without' for #<Class:0x007fdaf1821030> (NoMethodError)

どんな助けでも感謝..

4

1 に答える 1