diff options
author | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-11-10 07:48:56 +0000 |
---|---|---|
committer | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-11-10 07:48:56 +0000 |
commit | fbf59bdbea63efd34ccc144e648467d2f52e7345 (patch) | |
tree | 244f0e7ae112cc7dd135e5d1ac24e6c70ba71b4a /test/rubygems/test_gem_commands_dependency_command.rb | |
parent | 7a4aad75356496559460041a6c063bdb736c7236 (diff) |
Import RubyGems trunk revision 1493.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rubygems/test_gem_commands_dependency_command.rb')
-rw-r--r-- | test/rubygems/test_gem_commands_dependency_command.rb | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/test/rubygems/test_gem_commands_dependency_command.rb b/test/rubygems/test_gem_commands_dependency_command.rb new file mode 100644 index 0000000000..9bf59537fd --- /dev/null +++ b/test/rubygems/test_gem_commands_dependency_command.rb @@ -0,0 +1,108 @@ +require 'test/unit' +require File.join(File.expand_path(File.dirname(__FILE__)), 'gemutilities') +require 'rubygems/commands/dependency_command' + +class TestGemCommandsDependencyCommand < RubyGemTestCase + + def setup + super + + @cmd = Gem::Commands::DependencyCommand.new + @cmd.options[:domain] = :local + end + + def test_execute + quick_gem 'foo' do |gem| + gem.add_dependency 'bar', '> 1.0.0' + end + + @cmd.options[:args] = %w[foo] + + use_ui @ui do + @cmd.execute + end + + assert_equal "Gem foo-0.0.2\n bar (> 1.0.0)\n\n", @ui.output + assert_equal '', @ui.error + end + + def test_execute_no_match + @cmd.options[:args] = %w[foo] + + assert_raise MockGemUi::TermError do + use_ui @ui do + @cmd.execute + end + end + + assert_equal "No match found for foo (>= 0)\n", @ui.output + assert_equal '', @ui.error + end + + def test_execute_pipe_format + quick_gem 'foo' do |gem| + gem.add_dependency 'bar', '> 1.0.0' + end + + @cmd.options[:args] = %w[foo] + @cmd.options[:pipe_format] = true + + use_ui @ui do + @cmd.execute + end + + assert_equal "bar --version '> 1.0.0'\n", @ui.output + assert_equal '', @ui.error + end + + def test_execute_reverse + quick_gem 'foo' do |gem| + gem.add_dependency 'bar', '> 1.0.0' + end + + quick_gem 'baz' do |gem| + gem.add_dependency 'foo' + end + + @cmd.options[:args] = %w[foo] + @cmd.options[:reverse_dependencies] = true + + use_ui @ui do + @cmd.execute + end + + expected = <<-EOF +Gem foo-0.0.2 + bar (> 1.0.0) + Used by + baz-0.0.2 (foo (>= 0)) + + EOF + + assert_equal expected, @ui.output + assert_equal '', @ui.error + end + + def test_execute_remote + foo = quick_gem 'foo' do |gem| + gem.add_dependency 'bar', '> 1.0.0' + end + + util_setup_source_info_cache foo + + FileUtils.rm File.join(@gemhome, 'specifications', + "#{foo.full_name}.gemspec") + + @cmd.options[:args] = %w[foo] + @cmd.options[:domain] = :remote + + use_ui @ui do + @cmd.execute + end + + assert_equal "Gem foo-0.0.2\n bar (> 1.0.0)\n\n", @ui.output + assert_equal '', @ui.error + end + +end + |