summaryrefslogtreecommitdiff
path: root/jni/ruby/test/rubygems/test_gem_commands_generate_index_command.rb
diff options
context:
space:
mode:
Diffstat (limited to 'jni/ruby/test/rubygems/test_gem_commands_generate_index_command.rb')
-rw-r--r--jni/ruby/test/rubygems/test_gem_commands_generate_index_command.rb50
1 files changed, 50 insertions, 0 deletions
diff --git a/jni/ruby/test/rubygems/test_gem_commands_generate_index_command.rb b/jni/ruby/test/rubygems/test_gem_commands_generate_index_command.rb
new file mode 100644
index 0000000..2e478d9
--- /dev/null
+++ b/jni/ruby/test/rubygems/test_gem_commands_generate_index_command.rb
@@ -0,0 +1,50 @@
+require 'rubygems/test_case'
+require 'rubygems/indexer'
+require 'rubygems/commands/generate_index_command'
+
+class TestGemCommandsGenerateIndexCommand < Gem::TestCase
+
+ def setup
+ super
+
+ @cmd = Gem::Commands::GenerateIndexCommand.new
+ @cmd.options[:directory] = @gemhome
+ end
+
+ def test_execute
+ use_ui @ui do
+ @cmd.execute
+ end
+
+ specs = File.join @gemhome, "specs.4.8.gz"
+
+ assert File.exist?(specs), specs
+ end
+
+ def test_handle_options_directory
+ return if win_platform?
+ refute_equal '/nonexistent', @cmd.options[:directory]
+
+ @cmd.handle_options %w[--directory /nonexistent]
+
+ assert_equal '/nonexistent', @cmd.options[:directory]
+ end
+
+ def test_handle_options_directory_windows
+ return unless win_platform?
+
+ refute_equal '/nonexistent', @cmd.options[:directory]
+
+ @cmd.handle_options %w[--directory C:/nonexistent]
+
+ assert_equal 'C:/nonexistent', @cmd.options[:directory]
+ end
+
+ def test_handle_options_update
+ @cmd.handle_options %w[--update]
+
+ assert @cmd.options[:update]
+ end
+
+end if ''.respond_to? :to_xs
+