diff options
| author | Jack Nagel | 2014-06-18 20:32:51 -0500 |
|---|---|---|
| committer | Jack Nagel | 2014-06-18 20:32:51 -0500 |
| commit | 203653e821c40a68dbdfd9a9457214dfa63111ad (patch) | |
| tree | e14dd3b3016e6202811e94fafc52142a89053948 /Library/Homebrew/test | |
| parent | be6c29846b51b91254a86117e904747b2fe2a4d8 (diff) | |
| download | homebrew-203653e821c40a68dbdfd9a9457214dfa63111ad.tar.bz2 | |
Move test helpers into Homebrew::TestCase
Diffstat (limited to 'Library/Homebrew/test')
| -rw-r--r-- | Library/Homebrew/test/test_formula.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_resource.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_software_spec.rb | 4 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_versions.rb | 6 | ||||
| -rw-r--r-- | Library/Homebrew/test/testing_env.rb | 77 |
5 files changed, 38 insertions, 53 deletions
diff --git a/Library/Homebrew/test/test_formula.rb b/Library/Homebrew/test/test_formula.rb index e8a8f7f3a..eda6933fe 100644 --- a/Library/Homebrew/test/test_formula.rb +++ b/Library/Homebrew/test/test_formula.rb @@ -2,8 +2,6 @@ require 'testing_env' require 'test/testball' class FormulaTests < Homebrew::TestCase - include VersionAssertions - def test_formula_instantiation klass = Class.new(Formula) { url "http://example.com/foo-1.0.tar.gz" } name = "formula_name" diff --git a/Library/Homebrew/test/test_resource.rb b/Library/Homebrew/test/test_resource.rb index 3f60c33c1..03cb11c1b 100644 --- a/Library/Homebrew/test/test_resource.rb +++ b/Library/Homebrew/test/test_resource.rb @@ -2,8 +2,6 @@ require 'testing_env' require 'resource' class ResourceTests < Homebrew::TestCase - include VersionAssertions - def setup @resource = Resource.new('test') end diff --git a/Library/Homebrew/test/test_software_spec.rb b/Library/Homebrew/test/test_software_spec.rb index 11b4ed11e..669f7d5e5 100644 --- a/Library/Homebrew/test/test_software_spec.rb +++ b/Library/Homebrew/test/test_software_spec.rb @@ -2,8 +2,6 @@ require 'testing_env' require 'software_spec' class SoftwareSpecTests < Homebrew::TestCase - include VersionAssertions - def setup @spec = SoftwareSpec.new end @@ -88,8 +86,6 @@ class SoftwareSpecTests < Homebrew::TestCase end class HeadSoftwareSpecTests < Homebrew::TestCase - include VersionAssertions - def setup @spec = HeadSoftwareSpec.new end diff --git a/Library/Homebrew/test/test_versions.rb b/Library/Homebrew/test/test_versions.rb index 93abb87d2..f317237e3 100644 --- a/Library/Homebrew/test/test_versions.rb +++ b/Library/Homebrew/test/test_versions.rb @@ -2,8 +2,6 @@ require 'testing_env' require 'version' class VersionTests < Homebrew::TestCase - include VersionAssertions - def test_accepts_objects_responding_to_to_str value = stub(:to_str => '0.1') assert_equal '0.1', Version.new(value).to_s @@ -29,8 +27,6 @@ class VersionTests < Homebrew::TestCase end class VersionComparisonTests < Homebrew::TestCase - include VersionAssertions - def test_version_comparisons assert_operator version('0.1'), :==, version('0.1.0') assert_operator version('0.1'), :<, version('0.2') @@ -96,8 +92,6 @@ class VersionComparisonTests < Homebrew::TestCase end class VersionParsingTests < Homebrew::TestCase - include VersionAssertions - def test_pathname_version d = HOMEBREW_CELLAR/'foo-0.1.9' d.mkpath diff --git a/Library/Homebrew/test/testing_env.rb b/Library/Homebrew/test/testing_env.rb index 981be411d..76e1b19f3 100644 --- a/Library/Homebrew/test/testing_env.rb +++ b/Library/Homebrew/test/testing_env.rb @@ -56,23 +56,6 @@ at_exit { HOMEBREW_PREFIX.parent.rmtree } # Test fixtures and files can be found relative to this path TEST_DIRECTORY = File.dirname(File.expand_path(__FILE__)) -def shutup - if ARGV.verbose? - yield - else - begin - tmperr = $stderr.clone - tmpout = $stdout.clone - $stderr.reopen '/dev/null', 'w' - $stdout.reopen '/dev/null', 'w' - yield - ensure - $stderr.reopen tmperr - $stdout.reopen tmpout - end - end -end - require 'test/unit' # must be after at_exit require 'extend/ARGV' # needs to be after test/unit to avoid conflict with OptionsParser ARGV.extend(HomebrewArgvExtension) @@ -84,28 +67,6 @@ rescue LoadError warn 'The mocha gem is required to run some tests, expect failures' end -module VersionAssertions - def version v - Version.new(v) - end - - def assert_version_equal expected, actual - assert_equal Version.new(expected), actual - end - - def assert_version_detected expected, url - assert_equal expected, Version.parse(url).to_s - end - - def assert_version_nil url - assert_nil Version.parse(url) - end - - def assert_version_tokens tokens, version - assert_equal tokens, version.send(:tokens).map(&:to_s) - end -end - module Test::Unit::Assertions def assert_empty(obj, msg=nil) assert_respond_to(obj, :empty?, msg) @@ -114,12 +75,50 @@ module Test::Unit::Assertions end module Homebrew + module VersionAssertions + def version v + Version.new(v) + end + + def assert_version_equal expected, actual + assert_equal Version.new(expected), actual + end + + def assert_version_detected expected, url + assert_equal expected, Version.parse(url).to_s + end + + def assert_version_nil url + assert_nil Version.parse(url) + end + + def assert_version_tokens tokens, version + assert_equal tokens, version.send(:tokens).map(&:to_s) + end + end + class TestCase < ::Test::Unit::TestCase + include VersionAssertions + TEST_SHA1 = "deadbeefdeadbeefdeadbeefdeadbeefdeadbeef".freeze TEST_SHA256 = "deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef".freeze def formula(name="formula_name", path=Formula.path(name), &block) @_f = Class.new(Formula, &block).new(name, path) end + + def shutup + err = $stderr.clone + out = $stdout.clone + + begin + $stderr.reopen("/dev/null", "w") + $stdout.reopen("/dev/null", "w") + yield + ensure + $stderr.reopen(err) + $stdout.reopen(out) + end + end end end |
