def assert_instance_of(klass, object, message="")
_wrap_assertion do
klasses = nil
klasses = klass if klass.is_a?(Array)
assert_block("The first parameter to assert_instance_of should be " +
"a Class or an Array of Class.") do
if klasses
klasses.all? {|k| k.is_a?(Class)}
else
klass.is_a?(Class)
end
end
klass_message = AssertionMessage.maybe_container(klass) do |value|
"<#{value}>"
end
full_message = build_message(message, "<?> expected to be an instance of\n? but was\n<?>.\n", object, klass_message, object.class)
assert_block(full_message) do
if klasses
klasses.any? {|k| object.instance_of?(k)}
else
object.instance_of?(klass)
end
end
end
end