测试ActiveRecord关联时出错

时间:2018-05-09 21:28:35

标签: ruby-on-rails rspec-rails shoulda

我有一个带有以下型号的Rails 5.2应用程序:

SectionInfo

我使用的是rspec-rails(3.7.2),shoulda-matcher(3.1.2)。 我有一个测试关联的规范:

   #define INTERNAL_CATCH_SECTION( ... ) \
    if( Catch::Section const& INTERNAL_CATCH_UNIQUE_NAME( catch_internal_Section ) = Catch::SectionInfo( CATCH_INTERNAL_LINEINFO, __VA_ARGS__ ) )

无论我使用哪种语法,我都会遇到同样的错误:

class Foo < ApplicationRecord
  has_many :bars
end

class Bar < ApplicationRecord
  belongs_to :foo
end

我按照说明here,但仍然收到错误。我已将示例项目推送到Github:https://github.com/fredwillmore/shoulda_matchers_test

1 个答案:

答案 0 :(得分:0)

我不确定,但我认为您需要定义类似rspec的类型:

RSpec.describe Foo, type: :model do
   it { is_expected.to have_many :bars }
end