Add assert_eql to provide better failure messages for eql? tests

This commit is contained in:
Jack Nagel 2014-07-03 16:54:46 -05:00
parent 1ee4cd94ba
commit 7d8a901f7a
9 changed files with 28 additions and 27 deletions

View File

@ -71,12 +71,12 @@ class DependenciesTests < Homebrew::TestCase
b << dep
assert_equal a, b
assert a.eql?(b)
assert_eql a, b
b << Dependency.new("bar", [:optional])
refute_equal a, b
assert !a.eql?(b)
refute_eql a, b
end
end

View File

@ -44,8 +44,8 @@ class DependencyTests < Homebrew::TestCase
foo2 = Dependency.new("foo")
bar = Dependency.new("bar")
assert_equal foo1, foo2
assert foo1.eql?(foo2)
assert_eql foo1, foo2
refute_equal foo1, bar
assert !foo1.eql?(bar)
refute_eql foo1, bar
end
end

View File

@ -119,9 +119,7 @@ class FormulaTests < Homebrew::TestCase
x = TestBall.new
y = TestBall.new
assert_equal x, y
assert_equal y, x
assert x.eql?(y)
assert y.eql?(x)
assert_eql x, y
assert_equal x.hash, y.hash
end
@ -129,10 +127,8 @@ class FormulaTests < Homebrew::TestCase
x = TestBall.new("foo")
y = TestBall.new("bar")
refute_equal x, y
refute_equal y, x
refute_eql x, y
refute_equal x.hash, y.hash
assert !x.eql?(y)
assert !y.eql?(x)
end
def test_comparison_with_non_formula_objects_does_not_raise

View File

@ -13,9 +13,8 @@ class LanguageModuleDependencyTests < Homebrew::TestCase
def test_unique_deps_are_not_eql
x = LanguageModuleDependency.new(:node, "less")
y = LanguageModuleDependency.new(:node, "coffee-script")
refute_eql x, y
refute_equal x.hash, y.hash
assert !x.eql?(y)
assert !y.eql?(x)
end
def test_differing_module_and_import_name

View File

@ -19,8 +19,8 @@ class OptionTests < Homebrew::TestCase
bar = Option.new("bar")
assert_equal foo, @option
refute_equal bar, @option
assert @option.eql?(foo)
assert !@option.eql?(bar)
assert_eql @option, foo
refute_eql @option, bar
assert_operator bar, :<, foo
end

View File

@ -125,15 +125,13 @@ class RequirementTests < Homebrew::TestCase
def test_eql
a, b = Requirement.new, Requirement.new
assert a.eql?(b)
assert b.eql?(a)
assert_eql a, b
assert_equal a.hash, b.hash
end
def test_not_eql
a, b = Requirement.new([:optional]), Requirement.new
refute_eql a, b
refute_equal a.hash, b.hash
assert !a.eql?(b)
assert !b.eql?(a)
end
end

View File

@ -83,9 +83,8 @@ class VersionComparisonTests < Homebrew::TestCase
v2 = version('0.1.0')
v3 = version('0.1.1')
assert v1.eql?(v2)
assert v2.eql?(v1)
assert !v1.eql?(v3)
assert_eql v1, v2
refute_eql v1, v3
assert_equal v1.hash, v2.hash
h = { v1 => :foo }

View File

@ -5,24 +5,21 @@ class X11DependencyTests < Homebrew::TestCase
def test_eql_instances_are_eql
x = X11Dependency.new
y = X11Dependency.new
assert x.eql?(y)
assert y.eql?(x)
assert_eql x, y
assert_equal x.hash, y.hash
end
def test_not_eql_when_hashes_differ
x = X11Dependency.new("foo")
y = X11Dependency.new
refute_eql x, y
refute_equal x.hash, y.hash
assert !x.eql?(y)
assert !y.eql?(x)
end
def test_different_min_version
x = X11Dependency.new
y = X11Dependency.new("x11", %w[2.5])
refute x.eql?(y)
refute y.eql?(x)
refute_eql x, y
end
def test_x_env

View File

@ -141,5 +141,17 @@ module Homebrew
def assert_nothing_raised
yield
end
def assert_eql(exp, act, msg=nil)
msg = message(msg, "") { diff exp, act }
assert exp.eql?(act), msg
end
def refute_eql(exp, act, msg=nil)
msg = message(msg) {
"Expected #{mu_pp(act)} to not be eql to #{mu_pp(exp)}"
}
refute exp.eql?(act), msg
end
end
end