diff options
Diffstat (limited to 'test/rubygems/test_gem_commands_cleanup_command.rb')
-rw-r--r-- | test/rubygems/test_gem_commands_cleanup_command.rb | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/test/rubygems/test_gem_commands_cleanup_command.rb b/test/rubygems/test_gem_commands_cleanup_command.rb new file mode 100644 index 0000000000..14224c4752 --- /dev/null +++ b/test/rubygems/test_gem_commands_cleanup_command.rb @@ -0,0 +1,57 @@ +###################################################################### +# This file is imported from the rubygems project. +# DO NOT make modifications in this repo. They _will_ be reverted! +# File a patch instead and assign it to Ryan Davis or Eric Hodel. +###################################################################### + +require 'rubygems/test_case' +require 'rubygems/commands/cleanup_command' + +class TestGemCommandsCleanupCommand < Gem::TestCase + + def setup + super + + @cmd = Gem::Commands::CleanupCommand.new + + @a_1 = quick_spec 'a', 1 + @a_2 = quick_spec 'a', 2 + + install_gem @a_1 + install_gem @a_2 + end + + def test_execute + @cmd.options[:args] = %w[a] + + @cmd.execute + + refute_path_exists @a_1.gem_dir + end + + def test_execute_all + @b_1 = quick_spec 'b', 1 + @b_2 = quick_spec 'b', 2 + + install_gem @b_1 + install_gem @b_2 + + @cmd.options[:args] = [] + + @cmd.execute + + refute_path_exists @a_1.gem_dir + refute_path_exists @b_1.gem_dir + end + + def test_execute_dry_run + @cmd.options[:args] = %w[a] + @cmd.options[:dryrun] = true + + @cmd.execute + + assert_path_exists @a_1.gem_dir + end + +end + |