-1

我在我的模型中编写了一个初始化方法(非活动记录)我试图为该初始化方法编写 rspec,但不知道我该如何编写它。请帮我。

这是我的模型

class Sample

  ATTRIBUTES = %w{ picture_id owner_id hr_width hr_height thumb_width 
  thumb_height thumb_url journal is_border lr_url }.map! { |s| s.to_sym }.freeze

  attr_accessor *ATTRIBUTES

  require 'httpclient'

  def initialize(*h)
    if h.length == 1 && h.first.kind_of?(Hash)
      h.first.each { |k,v| send("#{k}=",v) }
    end
  end

end
4

2 回答 2

1

方法initialize旨在构造一个新实例。每当调用方法时new都会调用它。

你可以写smth。喜欢:

let(:sample) { Sample.new() }

it 'construct new sample' do
  here you should to check whatever you want
end 
于 2013-06-14T11:14:01.877 回答
1

initialize是私有方法,因此您不应显式测试它。如果它有副作用,存根环境可以期待这些。如果它没有副作用,就不要测试它。

于 2013-06-14T11:16:44.047 回答