2

ユーザーの名と数量のみを返すメソッドを持つモデルがあります。

class User < ActiveRecord::Base
  def self.list
    select("firstname, qty").order("qty desc").all
  end
end

rSpec で戻り値をテストするにはどうすればよいですか?

User.list.should == [?????]

このメソッドは User オブジェクトの配列を返しますが、属性は 2 つしかありません。これは私が立ち往生しているところです。

4

2 に答える 2

3

不完全なユーザーを返すため.list、最善の策は、属性をハッシュとして引き出すことです。

User.list.map { |u| u.attributes }.
    should == [{ :firstname => "John", :qty => 10 }, { ... }]
于 2011-07-22T14:47:51.110 に答える