Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rspec:验证序列化程序的关联_Ruby On Rails_Rspec_Serialization - Fatal编程技术网

Ruby on rails rspec:验证序列化程序的关联

Ruby on rails rspec:验证序列化程序的关联,ruby-on-rails,rspec,serialization,Ruby On Rails,Rspec,Serialization,我不认为有RSpec匹配器用于活动的\u model\u序列化器,它是一个独立的第三方gem。你最好的选择是使用序列化程序生成一个带有as_json的散列,并在测试中比较结果。我认为没有用于活动\u model\u序列化程序的RSpec匹配程序,它是一个独立的第三方gem。最好是使用序列化程序生成一个带有as_json的散列,并在测试中比较结果 # model class Post < ActiveRecord::Base has_many :comments end # model

我不认为有RSpec匹配器用于
活动的\u model\u序列化器
,它是一个独立的第三方gem。你最好的选择是使用序列化程序生成一个带有
as_json
的散列,并在测试中比较结果。

我认为没有用于
活动\u model\u序列化程序的RSpec匹配程序,它是一个独立的第三方gem。最好是使用序列化程序生成一个带有
as_json
的散列,并在测试中比较结果

# model
class Post < ActiveRecord::Base
  has_many :comments
end

# model spec
RSpec.describe Post, type: :model do
  subject { build(:post) }
  it { is_expected.to have_many(:comments) }
end
# serializer
class PostSerializer < ActiveModel::Serializer
  has_many :comments
end

# serializer spec
RSpec.describe PostSerializer, type: :serializer do
  let(:serializer) { PostSerializer.new(create(:post)) }

  # validation for `has_many` association.
end