From 6b6b27126d7ecc1dde9a6bc166a7e1daa3af35d2 Mon Sep 17 00:00:00 2001 From: Markus Reiter Date: Fri, 21 Oct 2016 08:57:39 +0200 Subject: Reorder and rename test files. --- Library/Homebrew/test/test_audit.rb | 472 ------------------------------------ 1 file changed, 472 deletions(-) delete mode 100644 Library/Homebrew/test/test_audit.rb (limited to 'Library/Homebrew/test/test_audit.rb') diff --git a/Library/Homebrew/test/test_audit.rb b/Library/Homebrew/test/test_audit.rb deleted file mode 100644 index 2725f906e..000000000 --- a/Library/Homebrew/test/test_audit.rb +++ /dev/null @@ -1,472 +0,0 @@ -require "testing_env" -require "fileutils" -require "pathname" -require "formulary" -require "dev-cmd/audit" - -class FormulaTextTests < Homebrew::TestCase - def setup - @dir = mktmpdir - end - - def teardown - FileUtils.rm_rf @dir - end - - def formula_text(name, body = nil, options = {}) - path = Pathname.new "#{@dir}/#{name}.rb" - path.open("w") do |f| - f.write <<-EOS.undent - class #{Formulary.class_s(name)} < Formula - #{body} - end - #{options[:patch]} - EOS - end - FormulaText.new path - end - - def test_simple_valid_formula - ft = formula_text "valid", 'url "http://www.example.com/valid-1.0.tar.gz"' - - refute ft.data?, "The formula should not have DATA" - refute ft.end?, "The formula should not have __END__" - assert ft.trailing_newline?, "The formula should have a trailing newline" - - assert ft =~ /\burl\b/, "The formula should match 'url'" - assert_nil ft.line_number(/desc/), "The formula should not match 'desc'" - assert_equal 2, ft.line_number(/\burl\b/) - assert ft.include?("Valid"), "The formula should include \"Valid\"" - end - - def test_trailing_newline - ft = formula_text "newline" - assert ft.trailing_newline?, "The formula must have a trailing newline" - end - - def test_has_data - ft = formula_text "data", "patch :DATA" - assert ft.data?, "The formula must have DATA" - end - - def test_has_end - ft = formula_text "end", "", patch: "__END__\na patch here" - assert ft.end?, "The formula must have __END__" - assert_equal "class End < Formula\n \nend", ft.without_patch - end -end - -class FormulaAuditorTests < Homebrew::TestCase - def setup - @dir = mktmpdir - end - - def teardown - FileUtils.rm_rf @dir - end - - def formula_auditor(name, text, options = {}) - path = Pathname.new "#{@dir}/#{name}.rb" - path.open("w") do |f| - f.write text - end - FormulaAuditor.new Formulary.factory(path), options - end - - def test_init_no_problems - fa = formula_auditor "foo", <<-EOS.undent - class Foo < Formula - url "http://example.com/foo-1.0.tgz" - end - EOS - - assert_equal [], fa.problems - end - - def test_audit_file_permissions - File.stubs(:umask).returns 022 - fa = formula_auditor "foo", <<-EOS.undent - class Foo < Formula - url "http://example.com/foo-1.0.tgz" - end - EOS - - path = fa.formula.path - path.chmod 0400 - - fa.audit_file - assert_equal ["Incorrect file permissions (400): chmod 644 #{path}"], - fa.problems - end - - def test_audit_file_data_no_end - fa = formula_auditor "foo", <<-EOS.undent - class Foo < Formula - url "http://example.com/foo-1.0.tgz" - patch :DATA - end - EOS - fa.audit_file - assert_equal ["'DATA' was found, but no '__END__'"], fa.problems - end - - def test_audit_file_end_no_data - fa = formula_auditor "foo", <<-EOS.undent - class Foo < Formula - url "http://example.com/foo-1.0.tgz" - end - __END__ - a patch goes here - EOS - fa.audit_file - assert_equal ["'__END__' was found, but 'DATA' is not used"], fa.problems - end - - def test_audit_file_no_trailing_newline - fa = formula_auditor "foo", 'class Foo "http://www.freedesktop.org/wiki/bar", - "baz" => "http://www.freedesktop.org/wiki/Software/baz", - "qux" => "https://code.google.com/p/qux", - "quux" => "http://github.com/quux", - "corge" => "http://savannah.nongnu.org/corge", - "grault" => "http://grault.github.io/", - "garply" => "http://www.gnome.org/garply", - "waldo" => "http://www.gnu.org/waldo", - } - - formula_homepages.each do |name, homepage| - fa = formula_auditor name, <<-EOS.undent - class #{Formulary.class_s(name)} < Formula - homepage "#{homepage}" - url "http://example.com/#{name}-1.0.tgz" - end - EOS - - fa.audit_homepage - if homepage =~ %r{http:\/\/www\.freedesktop\.org} - if homepage =~ /Software/ - assert_match "#{homepage} should be styled " \ - "`https://wiki.freedesktop.org/www/Software/project_name`", - fa.problems.first - else - assert_match "#{homepage} should be styled " \ - "`https://wiki.freedesktop.org/project_name`", - fa.problems.first - end - elsif homepage =~ %r{https:\/\/code\.google\.com} - assert_match "#{homepage} should end with a slash", fa.problems.first - else - assert_match "Please use https:// for #{homepage}", fa.problems.first - end - end - end -end -- cgit v1.2.3