adding NotImplementedError when trying to include polymorphic relationships

This commit is contained in:
Shishir Kakaraddi 2018-05-10 23:19:00 -07:00
parent d7f5c34404
commit 00d3aa4997
3 changed files with 4 additions and 4 deletions

View File

@ -237,7 +237,7 @@ module FastJsonapi
parse_include_item(include_item).each do |parsed_include|
relationship_to_include = klass.relationships_to_serialize[parsed_include]
raise ArgumentError, "#{parsed_include} is not specified as a relationship on #{klass.name}" unless relationship_to_include
raise NotImplementedError if relationship_to_include[:polymorphic].is_a?(Hash)
klass = relationship_to_include[:serializer].to_s.constantize
end
end

View File

@ -134,7 +134,7 @@ module FastJsonapi
items = parse_include_item(include_item)
items.each do |item|
next unless relationships_to_serialize && relationships_to_serialize[item]
raise NotImplementedError if @relationships_to_serialize[item][:polymorphic].is_a?(Hash)
record_type = @relationships_to_serialize[item][:record_type]
serializer = @relationships_to_serialize[item][:serializer].to_s.constantize
relationship_type = @relationships_to_serialize[item][:relationship_type]

View File

@ -199,10 +199,10 @@ describe FastJsonapi::ObjectSerializer do
expect(advertising_campaigns_serialized).to include(advertising_campaign.id)
end
end
it 'polymorphic' do
it 'polymorphic throws an error that polymorphic is not supported' do
options = {}
options[:include] = [:groupees]
serializable_hash = GroupSerializer.new([group], options).serializable_hash
expect(-> { GroupSerializer.new([group], options)}).to raise_error(NotImplementedError)
end
end