1

カスタム rspec サンプル グループに関する Benedikt Diecke の投稿を使用して、アクティブなモデル シリアライザーをテストしていますが、これを rspec モックの代わりに mocha を使用するように変換するのに問題があります。

http://benediktdeicke.com/2013/01/custom-rspec-example-groups/

この例には、シリアル化されるモデル クラスをモックするジェネリック メソッドが含まれています。rspec モックを使用しています。これを mocha を使用するように変換するにはどうすればよいですか?

let(:resource) do
    double(resource_name, attributes).tap do |double|
        double.stub(:read_attribute_for_serialization) { |name| attributes[name] }
    end
end
4

1 に答える 1

3

そこにモックを使用して得られることがたくさんあるとは思えません。リソース ファクトリ メソッドから実際のインスタンスを返します。つまり、カスタム サンプル グループでは、let(:attributes) をまったく定義せず、定義するだけです。

let(:resource) do
  {}
end

そして、シリアライザーの仕様は次のようになります

require 'spec_helper'

describe UserSerializer do
  let(:resource){ FactoryGirl.build(:resource_name) }

  it { should have_key(:name) }
  it { should have_key(:email) }
  it { should have_key(:created_at) }
  it { should have_key(:updated_at) }
end
于 2013-06-01T20:05:39.967 に答える