class Grntest::ResponseParser
Public Class Methods
new(type)
click to toggle source
# File lib/grntest/response-parser.rb, line 31 def initialize(type) @type = type end
parse(content, type)
click to toggle source
# File lib/grntest/response-parser.rb, line 25 def parse(content, type) parser = new(type) parser.parse(content) end
Public Instance Methods
parse(content)
click to toggle source
# File lib/grntest/response-parser.rb, line 35 def parse(content) case @type when "json", "msgpack" parse_result(content.chomp) else content end end
parse_result(result)
click to toggle source
# File lib/grntest/response-parser.rb, line 44 def parse_result(result) case @type when "json" begin JSON.parse(result) rescue JSON::ParserError raise ParseError.new(@type, result, $!.message) end when "msgpack" begin MessagePack.unpack(result.chomp) rescue MessagePack::UnpackError, NoMemoryError raise ParseError.new(@type, result, $!.message) end else raise ParseError.new(@type, result, "unknown type") end end