Sha256: 58df2fd98c72e59ad8252851a48133c022ab11fe7f1bdca25f0ef8b5e962c971
Contents?: true
Size: 663 Bytes
Versions: 15
Compression:
Stored size: 663 Bytes
Contents
module Approvals module Writers class JsonWriter < TextWriter def extension 'json' end def format(data) hash_or_array = filter(parse_data(data)) JSON.pretty_generate(hash_or_array) + "\n" end private def parse_data(data) if data.respond_to?(:to_str) # if the data is a string, assume it has been already json-ified JSON.parse(data) else JSON.parse(data.to_json) end end def filter data filter = ::Approvals::Filter.new(Approvals.configuration.excluded_json_keys) filter.apply(data) end end end end
Version data entries
15 entries across 15 versions & 2 rubygems