Module: Pact::Matchers::Messages

Included in:
RSpec::Matchers::MatchHeader, RSpec::Matchers::MatchTerm
Defined in:
lib/pact/provider/matchers/messages.rb

Instance Method Summary collapse

Instance Method Details

#expected_desc_for_it(expected) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/pact/provider/matchers/messages.rb', line 20

def expected_desc_for_it expected
  case expected
  when NilClass then "is nil"
  when Regexp
    "matches #{expected.inspect}"
  when Pact::Term
    "matches #{expected.matcher.inspect}"
  when Pact::SomethingLike
    "is an instance of #{Pact::Reification.from_term(expected).class}"
  else
    "equals #{expected.inspect}"
  end
end

#match_header_failure_message(header_name, expected, actual) ⇒ Object



16
17
18
# File 'lib/pact/provider/matchers/messages.rb', line 16

def match_header_failure_message header_name, expected, actual
  "Expected header \"#{header_name}\" to #{expected_desc(expected)}, but was #{actual_desc(actual)}"
end

#match_term_failure_message(diff, actual, diff_formatter, color_enabled) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/pact/provider/matchers/messages.rb', line 8

def match_term_failure_message diff, actual, diff_formatter, color_enabled
  actual_string = String === actual ? actual : actual.to_json
  maybe_coloured_string = color_enabled ? Rainbow(actual_string).white : actual_string
  message = "Actual: #{maybe_coloured_string}\n\n"
  formatted_diff = diff_formatter.call(diff)
  message + colorize_if_enabled(formatted_diff, color_enabled)
end