我们如何使用RSpec测试在后端没有等效表的Rails模型

时间:2011-11-21 09:24:28

标签: ruby-on-rails-3 rspec

我有一个主持人模型,它基本上可以查询来自其他模型的网站相关统计结果。

例如显示的统计数据可以是属于城市中许多区域的特定区域的用户总数。将此类记录的数量限制为固定数量。为此,在主持人模型中定义的主体使用区域模型。

由于查询不使用同一模型中的任何内容,但实际上来自其他模型,因此我不需要使用此模型进行表迁移。

我现在基本上正在尝试使用Rspec在Moderator模型中测试已定义的方法。 我基本上试图测试的是对方法的调用应该返回成功,我正在做的事情: -

subject.send(:method_name)
response.should be_success

对于所有这样定义的方法database_name.table_name does not exist,我遇到了一个常见错误。嗯,这是真的,但它应该如何才能真正发挥作用?以及如何解决这个问题,只是测试一个在上述环境中成功调用方法的简单用例。

感谢。

2 个答案:

答案 0 :(得分:1)

尝试这样的事情

describe Moderator do
  it "should do something" do
    moderator = Moderator.new
    moderator.something.should == "do"
  end
end

这假设您在主持人上有方法something并且它返回字符串"do"

如果您希望更深入了解您的rspec,我认为RSpec Book提供了很好的信息和示例。

答案 1 :(得分:0)

那么,

以下行代码对我有用: -

Model_name.method_name.should_not be_nil