diff options
Diffstat (limited to 'test/rubygems/test_gem_commands_specification_command.rb')
-rw-r--r-- | test/rubygems/test_gem_commands_specification_command.rb | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/test/rubygems/test_gem_commands_specification_command.rb b/test/rubygems/test_gem_commands_specification_command.rb index c2379595c7..3f936a64ea 100644 --- a/test/rubygems/test_gem_commands_specification_command.rb +++ b/test/rubygems/test_gem_commands_specification_command.rb @@ -70,6 +70,34 @@ class TestGemCommandsSpecificationCommand < RubyGemTestCase assert_equal '', @ui.error end + def test_execute_field + foo = quick_gem 'foo' + Gem.source_index.add_spec foo + + @cmd.options[:args] = %w[foo name] + + use_ui @ui do + @cmd.execute + end + + assert_equal "--- foo\n\n", @ui.output + end + + def test_execute_marshal + foo = quick_gem 'foo' + Gem.source_index.add_spec foo + + @cmd.options[:args] = %w[foo] + @cmd.options[:format] = :marshal + + use_ui @ui do + @cmd.execute + end + + assert_equal foo, Marshal.load(@ui.output) + assert_equal '', @ui.error + end + def test_execute_remote foo = quick_gem 'foo' @@ -92,5 +120,21 @@ class TestGemCommandsSpecificationCommand < RubyGemTestCase assert_match %r|name: foo|, @ui.output end + def test_execute_ruby + foo = quick_gem 'foo' + Gem.source_index.add_spec foo + + @cmd.options[:args] = %w[foo] + @cmd.options[:format] = :ruby + + use_ui @ui do + @cmd.execute + end + + assert_match %r|Gem::Specification.new|, @ui.output + assert_match %r|s.name = %q\{foo\}|, @ui.output + assert_equal '', @ui.error + end + end |