aboutsummaryrefslogtreecommitdiffstats
path: root/test/rubygems/test_gem_commands_specification_command.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/rubygems/test_gem_commands_specification_command.rb')
-rw-r--r--test/rubygems/test_gem_commands_specification_command.rb44
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