class BillForward::TypeCheck

Public Class Methods

verifyClass(expectedClass, actualClass, argName) click to toggle source

ensure that the provided class extends the expected class

# File lib/bill_forward/type_check.rb, line 11
def self.verifyClass(expectedClass, actualClass, argName)
        expectedClassName = expectedClass.name
        actualClassName = actualClass.name
        raise TypeError.new("Expected instance of '#{expectedClassName}' at argument '#{argName}'. "+
        "Instead received: '#{actualClassName}'") unless actualClass<=expectedClass || (defined?(RSpec) && actualClass<=RSpec::Mocks::Double)
end
verifyObj(expectedClass, obj, argName) click to toggle source

ensure that the provided object extends the expected class

# File lib/bill_forward/type_check.rb, line 4
def self.verifyObj(expectedClass, obj, argName)
        expectedClassName = expectedClass.name
        actualClassName = obj.class.name
        raise TypeError.new("Expected instance of '#{expectedClassName}' at argument '#{argName}'. "+
        "Instead received: '#{actualClassName}'") unless obj.kind_of?(expectedClass) || (defined?(RSpec) && obj.kind_of?(RSpec::Mocks::Double))
end