From 4f855db00ec79e33fe04c97de47fa2cafe3552f3 Mon Sep 17 00:00:00 2001 From: Jack Nagel Date: Tue, 2 Apr 2013 15:33:34 -0500 Subject: Split out and fix LanguageModuleDependency tests --- Library/Homebrew/test/test_dependency_collector.rb | 101 --------------------- .../test/test_language_module_dependency.rb | 87 ++++++++++++++++++ 2 files changed, 87 insertions(+), 101 deletions(-) create mode 100644 Library/Homebrew/test/test_language_module_dependency.rb (limited to 'Library') diff --git a/Library/Homebrew/test/test_dependency_collector.rb b/Library/Homebrew/test/test_dependency_collector.rb index e4679a760..6500afca3 100644 --- a/Library/Homebrew/test/test_dependency_collector.rb +++ b/Library/Homebrew/test/test_dependency_collector.rb @@ -111,104 +111,3 @@ class DependencyCollectorTests < Test::Unit::TestCase assert_equal X11Dependency::Proxy.new(:libpng), @d.build(:libpng) end end - -class LanguageModuleDependencyTests < Test::Unit::TestCase - def test_unique_deps_are_not_eql - x = LanguageModuleDependency.new(:node, "less") - y = LanguageModuleDependency.new(:node, "coffee-script") - assert x.hash != y.hash - assert !x.eql?(y) - assert !y.eql?(x) - end -end - -class ExternalDepsTests < Test::Unit::TestCase - def check_deps_fail specs - d = DependencyCollector.new - specs.each do |key, value| - d.add key => value - end - - # Should have found a dep - assert d.requirements.size == 1 - - d.requirements do |req| - assert !d.satisfied? - end - end - - def check_deps_pass specs - d = DependencyCollector.new - specs.each do |key, value| - d.add key => value - end - - # Should have found a dep - assert d.requirements.size == 1 - - d.requirements do |req| - assert d.satisfied? - end - end - - - def test_bad_perl_deps - check_deps_fail "notapackage" => :perl - end - - def test_good_perl_deps - check_deps_pass "ENV" => :perl - end - - def test_bad_python_deps - check_deps_fail "notapackage" => :python - end - - def test_good_python_deps - check_deps_pass "datetime" => :python - end - - def test_bad_ruby_deps - check_deps_fail "notapackage" => :ruby - end - - def test_good_ruby_deps - check_deps_pass "date" => :ruby - end - - # Only run these next two tests if jruby is installed. - def test_bad_jruby_deps - check_deps_fail "notapackage" => :jruby if which('jruby') - end - - def test_good_jruby_deps - check_deps_pass "date" => :jruby if which('jruby') - end - - # Only run these next two tests if rubinius is installed. - def test_bad_rubinius_deps - check_deps_fail "notapackage" => :rbx if which('rbx') - end - - def test_good_rubinius_deps - check_deps_pass "date" => :rbx if which('rbx') - end - - # Only run these next two tests if chicken scheme is installed. - def test_bad_chicken_deps - check_deps_fail "notapackage" => :chicken if which('csc') - end - - def test_good_chicken_deps - check_deps_pass "extras" => :chicken if which('csc') - end - - # Only run these next two tests if node.js is installed. - def test_bad_node_deps - check_deps_fail "notapackage" => :node if which('node') - end - - def test_good_node_deps - check_deps_pass "util" => :node if which('node') - end -end diff --git a/Library/Homebrew/test/test_language_module_dependency.rb b/Library/Homebrew/test/test_language_module_dependency.rb new file mode 100644 index 000000000..5ced896a4 --- /dev/null +++ b/Library/Homebrew/test/test_language_module_dependency.rb @@ -0,0 +1,87 @@ +require 'testing_env' +require 'requirements' +require 'hardware' + +class LanguageModuleDependencyTests < Test::Unit::TestCase + def assert_deps_fail(spec) + l = LanguageModuleDependency.new(*spec.shift.reverse) + assert !l.satisfied? + end + + def assert_deps_pass(spec) + l = LanguageModuleDependency.new(*spec.shift.reverse) + assert l.satisfied? + end + + def test_unique_deps_are_not_eql + x = LanguageModuleDependency.new(:node, "less") + y = LanguageModuleDependency.new(:node, "coffee-script") + assert x.hash != y.hash + assert !x.eql?(y) + assert !y.eql?(x) + end + + def test_bad_perl_deps + assert_deps_fail "notapackage" => :perl + end + + def test_good_perl_deps + assert_deps_pass "ENV" => :perl + end + + def test_bad_python_deps + assert_deps_fail "notapackage" => :python + end + + def test_good_python_deps + assert_deps_pass "datetime" => :python + end + + def test_bad_ruby_deps + assert_deps_fail "notapackage" => :ruby + end + + def test_good_ruby_deps + assert_deps_pass "date" => :ruby + end + + if which("jruby") + def test_bad_jruby_deps + assert_deps_fail "notapackage" => :jruby + end + + def test_good_jruby_deps + assert_deps_pass "date" => :jruby + end + end + + if which("rbx") + def test_bad_rubinius_deps + assert_deps_fail "notapackage" => :rbx + end + + def test_good_rubinius_deps + assert_deps_pass "date" => :rbx + end + end + + if which("csc") + def test_bad_chicken_deps + assert_deps_fail "notapackage" => :chicken + end + + def test_good_chicken_deps + assert_deps_pass "extras" => :chicken + end + end + + if which("node") + def test_bad_node_deps + assert_deps_fail "notapackage" => :node + end + + def test_good_node_deps + assert_deps_pass "util" => :node + end + end +end -- cgit v1.2.3