summaryrefslogtreecommitdiffhomepage
path: root/test/assert.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/assert.rb')
-rw-r--r--test/assert.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/assert.rb b/test/assert.rb
index 89d3a7969..196e71d39 100644
--- a/test/assert.rb
+++ b/test/assert.rb
@@ -124,6 +124,32 @@ def assert_not_equal(arg1, arg2 = nil, arg3 = nil)
assert_false(exp == act, msg, diff)
end
+def assert_same(arg1, arg2 = nil, arg3 = nil)
+ if block_given?
+ exp, act, msg = arg1, yield, arg2
+ else
+ exp, act, msg = arg1, arg2, arg3
+ end
+
+ msg ||= "Expected #{act.inspect} to be the same object as #{exp.inspect}"
+ diff = " Expected: #{exp.inspect} (class=#{exp.class}, oid=#{exp.__id__})\n" +
+ " Actual: #{act.inspect} (class=#{act.class}, oid=#{act.__id__})"
+ assert_true(exp.equal?(act), msg, diff)
+end
+
+def assert_not_same(arg1, arg2 = nil, arg3 = nil)
+ if block_given?
+ exp, act, msg = arg1, yield, arg2
+ else
+ exp, act, msg = arg1, arg2, arg3
+ end
+
+ msg ||= "Expected #{act.inspect} to not be the same object as #{exp.inspect}"
+ diff = " Expected: #{exp.inspect} (class=#{exp.class}, oid=#{exp.__id__})\n" +
+ " Actual: #{act.inspect} (class=#{act.class}, oid=#{act.__id__})"
+ assert_false(exp.equal?(act), msg, diff)
+end
+
def assert_nil(obj, msg = nil)
msg = "Expected #{obj.inspect} to be nil" unless msg
diff = assertion_diff(nil, obj)