Module: MyApiClient::MatcherHelper

Defined in:
lib/my_api_client/rspec/matcher_helper.rb

Overview

Helper module for rspec custom matcher

Instance Method Summary collapse

Instance Method Details

#diff_as_object(actual, expected) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/my_api_client/rspec/matcher_helper.rb', line 22

def diff_as_object(actual, expected)
  differ = RSpec::Support::Differ.new(
    object_preparer: ->(object) { RSpec::Matchers::Composable.surface_descriptions_in(object) },
    color: RSpec::Matchers.configuration.color?
  )
  differ.diff_as_object(actual, expected)
end

#disable_loggingObject



6
7
8
9
# File 'lib/my_api_client/rspec/matcher_helper.rb', line 6

def disable_logging
  logger = instance_double(MyApiClient::Request::Logger, info: nil, warn: nil)
  allow(MyApiClient::Request::Logger).to receive(:new).and_return(logger)
end

#dummy_response(status: 200, headers: {}, body: nil) ⇒ Object



11
12
13
14
15
16
17
18
19
20
# File 'lib/my_api_client/rspec/matcher_helper.rb', line 11

def dummy_response(status: 200, headers: {}, body: nil)
  instance_double(
    Sawyer::Response,
    timing: 0.0,
    data: instance_double(Sawyer::Resource),
    status:,
    headers:,
    body:
  )
end