diff --git a/rswag-specs/lib/rswag/specs/request_factory.rb b/rswag-specs/lib/rswag/specs/request_factory.rb index 2e8f3f1..2211fd0 100644 --- a/rswag-specs/lib/rswag/specs/request_factory.rb +++ b/rswag-specs/lib/rswag/specs/request_factory.rb @@ -118,7 +118,7 @@ module Rswag def build_query_string_part(param, value) name = param[:name] - return "#{name}=#{value}" unless param[:type].to_sym == :array + return "#{name}=#{value}" unless param[:type]&.to_sym == :array case param[:collectionFormat] when :ssv diff --git a/rswag-specs/lib/rswag/specs/swagger_formatter.rb b/rswag-specs/lib/rswag/specs/swagger_formatter.rb index 99b5912..7fb9e61 100644 --- a/rswag-specs/lib/rswag/specs/swagger_formatter.rb +++ b/rswag-specs/lib/rswag/specs/swagger_formatter.rb @@ -129,13 +129,14 @@ module Rswag end def upgrade_content!(mime_list, target_node) - target_node.merge!(content: {}) + target_node.merge!(content: {}) if target_node[:content].nil? schema = target_node[:schema] return if mime_list.empty? || schema.nil? mime_list.each do |mime_type| # TODO upgrade to have content-type specific schema - target_node[:content][mime_type] = { schema: schema } + target_node[:content][mime_type] = {} if target_node[:content][mime_type].nil? + target_node[:content][mime_type][:schema] = schema end end