在构造函数中测试实例变量赋值(RSpec)

时间:2014-02-02 09:49:43

标签: ruby-on-rails ruby rspec

我想测试简单的构造函数:

def initialize(parameters_hash)
  @parameters_hash = parameters_hash
end

你认为这个方法:

describe '.new' do
  let(:parameters_hash) { {} }
  it 'assigns input to @parameters_hash instance variable' do
    expect(subject.instance_variable_get('@parameters_hash')).to eq(parameters_hash)
  end
end

是正确的。也许你知道其他一些解决方案。

1 个答案:

答案 0 :(得分:0)

Rspec已经为执行完全所需的控制器实现了assigns帮助器see here

如果您需要类似于模型的内容,请考虑使用attr_reader并测试

expect(subject.parameters_hash).to eq({})