class TarkaMatchers::Matchers::Class::HaveAnInstanceVariableOf

Public Class Methods

new(instance_name) click to toggle source
# File lib/tarka_matchers/matchers/class/have_an_instance_variable_of.rb, line 13
def initialize instance_name
        @instance_name = instance_name
end

Public Instance Methods

matches?(actual) click to toggle source
# File lib/tarka_matchers/matchers/class/have_an_instance_variable_of.rb, line 22
def matches? actual
        @actual = actual.instance_variable_get(@instance_name)
        pass_default "contain an instance variable called, '#{@instance_name}', that equals '#{@expected}'."
        negated_default
        fail_default append: "#{TarkaMatchers::Formatters::Difference.difference(@expected,@actual)}"
        fail_with_message "failed to contain an instance variable called '#{@instance_name}'. It does not exist inside the class." unless actual.instance_variable_defined?(@instance_name)
        @actual == @expected
end
that_equals(expected) click to toggle source
# File lib/tarka_matchers/matchers/class/have_an_instance_variable_of.rb, line 17
def that_equals expected
        @expected = expected
        self
end