From 35795815c681bc224a904717d8b4a8187a88a46b Mon Sep 17 00:00:00 2001 From: Bobby Norton Date: Mon, 21 Sep 2009 23:18:26 -0500 Subject: [PATCH] Generated cleaning scripts now reference libs in gem --- Manifest.txt | 2 +- .../{templates => lib}/test_unit_cleaner.rb | 11 +++-------- .../test_unit_cleaner/templates/clean_test_unit | 9 ++++++++- .../test_unit_cleaner/test_unit_cleaner_generator.rb | 1 - lib/shubox.rb | 7 ++++++- shubox.gemspec | 2 +- test/test_ruby_generator.rb | 1 - test/test_test_unit_cleaner.rb | 7 ++++++- 8 files changed, 25 insertions(+), 15 deletions(-) rename cleaner_generators/test_unit_cleaner/{templates => lib}/test_unit_cleaner.rb (75%) diff --git a/Manifest.txt b/Manifest.txt index fd2c693..56098e3 100644 --- a/Manifest.txt +++ b/Manifest.txt @@ -24,8 +24,8 @@ app_generators/ruby/templates/test_io.rb app_generators/ruby/templates/test_right_triangle.rb bin/shubox cleaner_generators/test_unit_cleaner/USAGE +cleaner_generators/test_unit_cleaner/lib/test_unit_cleaner.rb cleaner_generators/test_unit_cleaner/templates/clean_test_unit -cleaner_generators/test_unit_cleaner/templates/test_unit_cleaner.rb cleaner_generators/test_unit_cleaner/test_unit_cleaner_generator.rb lib/languages.rb lib/shubox.rb diff --git a/cleaner_generators/test_unit_cleaner/templates/test_unit_cleaner.rb b/cleaner_generators/test_unit_cleaner/lib/test_unit_cleaner.rb similarity index 75% rename from cleaner_generators/test_unit_cleaner/templates/test_unit_cleaner.rb rename to cleaner_generators/test_unit_cleaner/lib/test_unit_cleaner.rb index 713f769..043946d 100644 --- a/cleaner_generators/test_unit_cleaner/templates/test_unit_cleaner.rb +++ b/cleaner_generators/test_unit_cleaner/lib/test_unit_cleaner.rb @@ -10,7 +10,7 @@ def run(args) dir = ARGV.first files = Dir["#{dir}/test/**/test_*.rb"].each do |file| - unless file.match /test_helper.rb/ + unless file.match(/test_helper.rb/) puts "cleaning: #{file}" clean(file) end @@ -39,13 +39,8 @@ def clean(filename) end def usage - <<-EOS -USAGE: test_unit_cleaner path/to/file - -Deletes the method bodies from all tests in the specified file. -If file is a directory, all tests in the directory matching the -pattern path/to/file/test/**/test_*.rb will be affected. - EOS + usage_file = File.dirname(__FILE__) + "/../USAGE" + return File.readlines(usage_file) end end end \ No newline at end of file diff --git a/cleaner_generators/test_unit_cleaner/templates/clean_test_unit b/cleaner_generators/test_unit_cleaner/templates/clean_test_unit index 2a60da5..f6fe3e8 100644 --- a/cleaner_generators/test_unit_cleaner/templates/clean_test_unit +++ b/cleaner_generators/test_unit_cleaner/templates/clean_test_unit @@ -1,5 +1,12 @@ #!/usr/bin/env ruby -require File.dirname(__FILE__) + '/test_unit_cleaner' +begin + require 'shubox' +rescue LoadError + require 'rubygems' + require 'shubox' +end + +require 'test_unit_cleaner/lib/test_unit_cleaner' Shubox::TestUnitCleaner.new.run(ARGV) \ No newline at end of file diff --git a/cleaner_generators/test_unit_cleaner/test_unit_cleaner_generator.rb b/cleaner_generators/test_unit_cleaner/test_unit_cleaner_generator.rb index 36a03c2..ae275cb 100644 --- a/cleaner_generators/test_unit_cleaner/test_unit_cleaner_generator.rb +++ b/cleaner_generators/test_unit_cleaner/test_unit_cleaner_generator.rb @@ -11,7 +11,6 @@ def manifest record do |m| m.directory 'script' m.template "clean_test_unit", "script/clean_test_unit", script_options - m.file "test_unit_cleaner.rb", "script/test_unit_cleaner.rb" end end diff --git a/lib/shubox.rb b/lib/shubox.rb index 107f7ca..78cf8eb 100644 --- a/lib/shubox.rb +++ b/lib/shubox.rb @@ -1,6 +1,11 @@ $:.unshift(File.dirname(__FILE__)) unless $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__))) +$:.unshift(File.dirname(__FILE__) + '/../cleaner_generators') unless + $:.include?(File.dirname(__FILE__) + '/../cleaner_generators') || $:.include?(File.expand_path(File.dirname(__FILE__) + '../cleaner_generators')) + module Shubox VERSION = '0.8' -end \ No newline at end of file +end + +require 'test_unit_cleaner/lib/test_unit_cleaner' \ No newline at end of file diff --git a/shubox.gemspec b/shubox.gemspec index bf97acd..36baeb1 100644 --- a/shubox.gemspec +++ b/shubox.gemspec @@ -14,7 +14,7 @@ to start coding: A directory structure, some classes and unit tests to get start s.email = ["codeculturist@gmail.com"] s.executables = ["shubox"] s.extra_rdoc_files = ["History.txt", "Manifest.txt", "PostInstall.txt", "app_generators/ruby/templates/file.txt", "README.rdoc"] - s.files = ["History.txt", "MIT-LICENSE", "Manifest.txt", "PostInstall.txt", "README.rdoc", "Rakefile", "app_generators/java/USAGE", "app_generators/java/java_generator.rb", "app_generators/java/templates/Greeting.java", "app_generators/java/templates/GreetingTest.java", "app_generators/java/templates/build.xml", "app_generators/java/templates/lib/hamcrest-core.jar", "app_generators/java/templates/lib/junit.jar", "app_generators/java/templates/project.iml", "app_generators/java/templates/project.ipr", "app_generators/ruby/USAGE", "app_generators/ruby/ruby_generator.rb", "app_generators/ruby/templates/file.txt", "app_generators/ruby/templates/rakefile.rb", "app_generators/ruby/templates/right_triangle.rb", "app_generators/ruby/templates/shubox.rb", "app_generators/ruby/templates/test_helper.rb", "app_generators/ruby/templates/test_io.rb", "app_generators/ruby/templates/test_right_triangle.rb", "bin/shubox", "cleaner_generators/test_unit_cleaner/USAGE", "cleaner_generators/test_unit_cleaner/templates/clean_test_unit", "cleaner_generators/test_unit_cleaner/templates/test_unit_cleaner.rb", "cleaner_generators/test_unit_cleaner/test_unit_cleaner_generator.rb", "lib/languages.rb", "lib/shubox.rb", "lib/shubox_app_generator.rb", "script/console", "script/destroy", "script/generate", "test/test_generator_helper.rb", "test/test_helper.rb", "test/test_java_generator.rb", "test/test_languages.rb", "test/test_ruby_generator.rb", "test/test_test_unit_cleaner.rb"] + s.files = ["History.txt", "MIT-LICENSE", "Manifest.txt", "PostInstall.txt", "README.rdoc", "Rakefile", "app_generators/java/USAGE", "app_generators/java/java_generator.rb", "app_generators/java/templates/Greeting.java", "app_generators/java/templates/GreetingTest.java", "app_generators/java/templates/build.xml", "app_generators/java/templates/lib/hamcrest-core.jar", "app_generators/java/templates/lib/junit.jar", "app_generators/java/templates/project.iml", "app_generators/java/templates/project.ipr", "app_generators/ruby/USAGE", "app_generators/ruby/ruby_generator.rb", "app_generators/ruby/templates/file.txt", "app_generators/ruby/templates/rakefile.rb", "app_generators/ruby/templates/right_triangle.rb", "app_generators/ruby/templates/shubox.rb", "app_generators/ruby/templates/test_helper.rb", "app_generators/ruby/templates/test_io.rb", "app_generators/ruby/templates/test_right_triangle.rb", "bin/shubox", "cleaner_generators/test_unit_cleaner/USAGE", "cleaner_generators/test_unit_cleaner/lib/test_unit_cleaner.rb", "cleaner_generators/test_unit_cleaner/templates/clean_test_unit", "cleaner_generators/test_unit_cleaner/test_unit_cleaner_generator.rb", "lib/languages.rb", "lib/shubox.rb", "lib/shubox_app_generator.rb", "script/console", "script/destroy", "script/generate", "test/test_generator_helper.rb", "test/test_helper.rb", "test/test_java_generator.rb", "test/test_languages.rb", "test/test_ruby_generator.rb", "test/test_test_unit_cleaner.rb"] s.homepage = %q{http://github.com/bobbyno/shubox/tree/master} s.post_install_message = %q{PostInstall.txt} s.rdoc_options = ["--main", "README.rdoc"] diff --git a/test/test_ruby_generator.rb b/test/test_ruby_generator.rb index c79724b..c79ac9c 100644 --- a/test/test_ruby_generator.rb +++ b/test/test_ruby_generator.rb @@ -27,7 +27,6 @@ def test_generator_without_options assert_generated_file "test/test_io.rb" assert_generated_file "test/test_helper.rb" assert_generated_file "script/clean_test_unit" - assert_generated_file "script/test_unit_cleaner.rb" run_generated_build_script("rake") end diff --git a/test/test_test_unit_cleaner.rb b/test/test_test_unit_cleaner.rb index 4b34ba8..ffc3b68 100644 --- a/test/test_test_unit_cleaner.rb +++ b/test/test_test_unit_cleaner.rb @@ -1,5 +1,5 @@ require File.join(File.dirname(__FILE__), "test_generator_helper.rb") -require File.join(File.dirname(__FILE__), '..', 'cleaner_generators', 'test_unit_cleaner', 'templates', 'test_unit_cleaner') +require File.join(File.dirname(__FILE__), '..', 'cleaner_generators', 'test_unit_cleaner', 'lib', 'test_unit_cleaner') require 'fileutils' require 'languages' @@ -14,6 +14,11 @@ def setup def teardown bare_teardown end + + def test_display_usage_with_no_args + usage = Shubox::TestUnitCleaner.new.usage + assert_not_nil(usage) + end def test_cleaner_without_options run_generator('test_unit_cleaner', [APP_ROOT], sources)