module RSpec::Varys

Public Class Methods

arguments_if_any(call) click to toggle source
# File lib/rspec/varys.rb, line 135
def self.arguments_if_any(call)
  call[:args].length > 0 ?  { arguments: call[:args] } : { }
end
class_name_for(object) click to toggle source
# File lib/rspec/varys.rb, line 106
def self.class_name_for(object)
  if object.kind_of? RSpec::Mocks::Double
    'Name'
  else
    object.kind_of?(Class) ? object.name : object.class.name
  end
end
confirmed_messages() click to toggle source
# File lib/rspec/varys.rb, line 78
def self.confirmed_messages
  @confirmed_messages
end
open_yaml_file() { |io| ... } click to toggle source
# File lib/rspec/varys.rb, line 139
def self.open_yaml_file
  File.open("varys.yaml", 'w') do |io|
    yield io
  end
end
print_report() click to toggle source
record(object, message, args, block, return_value) click to toggle source
# File lib/rspec/varys.rb, line 92
def self.record(object, message, args, block, return_value)
  @recorded_messages << {
    class_name: class_name_for(object),
    type:   type_for(object),
    message: message,
    args: args,
    return_value: return_value
  }
end
recorded_messages() click to toggle source
# File lib/rspec/varys.rb, line 82
def self.recorded_messages
  @recorded_messages
end
report() click to toggle source
# File lib/rspec/varys.rb, line 122
def self.report
  {
    untested_stubs: unconfirmed_messages.map do |call|
      {
        class_name:  call[:class_name],
        type:        call[:type],
        method:      call[:message].to_s,
        returns:     call[:return_value]
      }.merge(arguments_if_any(call))
    end
  }
end
reset() click to toggle source
# File lib/rspec/varys.rb, line 86
def self.reset
  @recorded_messages = []
  @generated_specs = nil
  @confirmed_messages = []
end
type_for(object) click to toggle source
# File lib/rspec/varys.rb, line 102
def self.type_for(object)
  object.kind_of?(Class) ? 'class' : 'instance'
end
unconfirmed_messages() click to toggle source
# File lib/rspec/varys.rb, line 146
def self.unconfirmed_messages
  recorded_messages - confirmed_messages
end