# File lib/bogus/contracts/contract_not_fulfilled.rb, line 5 def initialize(fake_name, opts = {}) @fake_name = fake_name @actual_interactions = opts.fetch(:actual) @missed_interactions = opts.fetch(:missed) super(message) end
# File lib/bogus/contracts/contract_not_fulfilled.rb, line 12 def message str = <<-EOF Contract not fullfilled for #{fake_name}! Missed interactions: #{interactions_str(missed_interactions)} Actual interactions: #{interactions_str(actual_interactions)} EOF str.gsub(' ' * 6, '') end
# File lib/bogus/contracts/contract_not_fulfilled.rb, line 27 def interactions_str(interactions) interactions.map { |i| " - #{InteractionPresenter.new(i)}" }.join("\n") end