Sha256: 3bcfc50b48f6d8f56eed0a058a284c4dd4ce7804ceb28691b25eabeb90551a30
Contents?: true
Size: 1.15 KB
Versions: 1
Compression:
Stored size: 1.15 KB
Contents
require 'pact/consumer_contract/active_support_support' require 'colored' module Pact module Matchers class NestedJsonDiffDecorator include Pact::ActiveSupportSupport EXPECTED = '"EXPECTED"' EXPECTED_COLOURED = '"' + "expected".red + '"' EXPECTED_REGEXP = '"EXPECTED_TO_MATCH"' EXPECTED_REGEXP_COLOURED = '"' + "expected_to_match".red + '"' ACTUAL = '"ACTUAL"' ACTUAL_COLOURED = '"' + "actual".green + '"' attr_reader :diff def initialize diff @diff = diff end def to_hash diff end def to_s colourise_message_if_configured fix_json_formatting(diff.to_json) end def colourise_message_if_configured message if Pact.configuration.color_enabled colourise_message message else message end end def colourise_message message message.split("\n").collect{| line | colourise(line) }.join("\n") end def colourise line line.white.gsub(EXPECTED, EXPECTED_COLOURED).gsub(ACTUAL, ACTUAL_COLOURED).gsub(EXPECTED_REGEXP, EXPECTED_REGEXP_COLOURED) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
pact-1.1.0.rc2 | lib/pact/matchers/nested_json_diff_decorator.rb |