summaryrefslogtreecommitdiff
path: root/test/rubygems/test_gem_rdoc.rb
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-12-14 05:09:37 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-12-14 05:09:37 +0000
commit1dfe3d93fa5d9ddabae8db067c5705ea6e551442 (patch)
treef5d79304d50c36811dd97167236e01c69b8cfb5e /test/rubygems/test_gem_rdoc.rb
parent497f8904cb3f90a3abf5340a129811aceb96ee33 (diff)
* lib/rubygems/commands/rdoc_command.rb: When overwriting
documentation, remove existing documentation first. * lib/rubygems/server.rb: Fixed documentation links. * test/rubygems/test_gem_server.rb: Test for the above. * lib/rubygems/rdoc.rb: Reduced diff with RDoc::RubyGemsHook * test/rubygems/test_gem_rdoc.rb: ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rubygems/test_gem_rdoc.rb')
-rw-r--r--test/rubygems/test_gem_rdoc.rb103
1 files changed, 58 insertions, 45 deletions
diff --git a/test/rubygems/test_gem_rdoc.rb b/test/rubygems/test_gem_rdoc.rb
index f8ca1d7a0d..2d279e3372 100644
--- a/test/rubygems/test_gem_rdoc.rb
+++ b/test/rubygems/test_gem_rdoc.rb
@@ -1,5 +1,5 @@
-require 'rubygems/test_case'
require 'rubygems'
+require 'rubygems/test_case'
require 'rubygems/rdoc'
class TestGemRDoc < Gem::TestCase
@@ -9,9 +9,17 @@ class TestGemRDoc < Gem::TestCase
def setup
super
- @a = quick_spec 'a'
+ @a = quick_spec 'a' do |s|
+ s.rdoc_options = %w[--main MyTitle]
+ s.extra_rdoc_files = %w[README]
+ end
+
+ write_file File.join(@tempdir, 'lib', 'a.rb')
+ write_file File.join(@tempdir, 'README')
- @rdoc = Gem::RDoc.new @a
+ install_gem @a
+
+ @hook = Gem::RDoc.new @a
begin
Gem::RDoc.load_rdoc
@@ -27,16 +35,16 @@ class TestGemRDoc < Gem::TestCase
# shipped for backwards compatibility.
def rdoc_3?
- Gem::Requirement.new('~> 3.0').satisfied_by? @rdoc.class.rdoc_version
+ Gem::Requirement.new('~> 3.0').satisfied_by? @hook.class.rdoc_version
end
def rdoc_3_8_or_better?
- Gem::Requirement.new('>= 3.8').satisfied_by? @rdoc.class.rdoc_version
+ Gem::Requirement.new('>= 3.8').satisfied_by? @hook.class.rdoc_version
end
def test_initialize
- assert @rdoc.generate_rdoc
- assert @rdoc.generate_ri
+ assert @hook.generate_rdoc
+ assert @hook.generate_ri
rdoc = Gem::RDoc.new @a, false, false
@@ -52,7 +60,7 @@ class TestGemRDoc < Gem::TestCase
-p
]
- @rdoc.delete_legacy_args args
+ @hook.delete_legacy_args args
assert_empty args
end
@@ -63,12 +71,13 @@ class TestGemRDoc < Gem::TestCase
options = RDoc::Options.new
options.files = []
- @rdoc.instance_variable_set :@rdoc, @rdoc.new_rdoc
- @rdoc.instance_variable_set :@file_info, []
+ rdoc = @hook.new_rdoc
+ @hook.instance_variable_set :@rdoc, rdoc
+ @hook.instance_variable_set :@file_info, []
- @rdoc.document 'darkfish', options, @a.doc_dir('rdoc')
+ @hook.document 'darkfish', options, @a.doc_dir('rdoc')
- assert @rdoc.rdoc_installed?
+ assert @hook.rdoc_installed?
end unless rdoc_4
def test_generate
@@ -77,12 +86,12 @@ class TestGemRDoc < Gem::TestCase
FileUtils.mkdir_p @a.doc_dir
FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
- @rdoc.generate
+ @hook.generate
- assert @rdoc.rdoc_installed?
- assert @rdoc.ri_installed?
+ assert @hook.rdoc_installed?
+ assert @hook.ri_installed?
- rdoc = @rdoc.instance_variable_get :@rdoc
+ rdoc = @hook.instance_variable_get :@rdoc
refute rdoc.options.hyperlink_all
end unless rdoc_4
@@ -95,9 +104,9 @@ class TestGemRDoc < Gem::TestCase
FileUtils.mkdir_p @a.doc_dir
FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
- @rdoc.generate
+ @hook.generate
- rdoc = @rdoc.instance_variable_get :@rdoc
+ rdoc = @hook.instance_variable_get :@rdoc
assert rdoc.options.hyperlink_all
end unless rdoc_4
@@ -110,21 +119,21 @@ class TestGemRDoc < Gem::TestCase
FileUtils.mkdir_p @a.doc_dir
FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
- @rdoc.generate
+ @hook.generate
- rdoc = @rdoc.instance_variable_get :@rdoc
+ rdoc = @hook.instance_variable_get :@rdoc
assert rdoc.options.hyperlink_all
end unless rdoc_4
def test_generate_disabled
- @rdoc.generate_rdoc = false
- @rdoc.generate_ri = false
+ @hook.generate_rdoc = false
+ @hook.generate_ri = false
- @rdoc.generate
+ @hook.generate
- refute @rdoc.rdoc_installed?
- refute @rdoc.ri_installed?
+ refute @hook.rdoc_installed?
+ refute @hook.ri_installed?
end
def test_generate_force
@@ -134,9 +143,9 @@ class TestGemRDoc < Gem::TestCase
FileUtils.mkdir_p @a.doc_dir 'rdoc'
FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
- @rdoc.force = true
+ @hook.force = true
- @rdoc.generate
+ @hook.generate
assert_path_exists File.join(@a.doc_dir('rdoc'), 'index.html')
assert_path_exists File.join(@a.doc_dir('ri'), 'cache.ri')
@@ -149,7 +158,7 @@ class TestGemRDoc < Gem::TestCase
FileUtils.mkdir_p @a.doc_dir 'rdoc'
FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
- @rdoc.generate
+ @hook.generate
refute_path_exists File.join(@a.doc_dir('rdoc'), 'index.html')
refute_path_exists File.join(@a.doc_dir('ri'), 'cache.ri')
@@ -161,10 +170,10 @@ class TestGemRDoc < Gem::TestCase
FileUtils.mkdir_p @a.doc_dir
FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
- @rdoc.generate_legacy
+ @hook.generate_legacy
- assert @rdoc.rdoc_installed?
- assert @rdoc.ri_installed?
+ assert @hook.rdoc_installed?
+ assert @hook.ri_installed?
end unless rdoc_4
def test_legacy_rdoc
@@ -173,31 +182,31 @@ class TestGemRDoc < Gem::TestCase
FileUtils.mkdir_p @a.doc_dir
FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
- @rdoc.legacy_rdoc '--op', @a.doc_dir('rdoc')
+ @hook.legacy_rdoc '--op', @a.doc_dir('rdoc')
- assert @rdoc.rdoc_installed?
+ assert @hook.rdoc_installed?
end unless rdoc_4
def test_new_rdoc
- assert_kind_of RDoc::RDoc, @rdoc.new_rdoc
+ assert_kind_of RDoc::RDoc, @hook.new_rdoc
end
def test_rdoc_installed?
- refute @rdoc.rdoc_installed?
+ refute @hook.rdoc_installed?
FileUtils.mkdir_p @a.doc_dir 'rdoc'
- assert @rdoc.rdoc_installed?
+ assert @hook.rdoc_installed?
end
def test_remove
FileUtils.mkdir_p @a.doc_dir 'rdoc'
FileUtils.mkdir_p @a.doc_dir 'ri'
- @rdoc.remove
+ @hook.remove
- refute @rdoc.rdoc_installed?
- refute @rdoc.ri_installed?
+ refute @hook.rdoc_installed?
+ refute @hook.ri_installed?
assert_path_exists @a.doc_dir
end
@@ -208,7 +217,7 @@ class TestGemRDoc < Gem::TestCase
FileUtils.chmod 0, @a.base_dir
e = assert_raises Gem::FilePermissionError do
- @rdoc.remove
+ @hook.remove
end
assert_equal @a.base_dir, e.directory
@@ -217,15 +226,15 @@ class TestGemRDoc < Gem::TestCase
end
def test_ri_installed?
- refute @rdoc.ri_installed?
+ refute @hook.ri_installed?
FileUtils.mkdir_p @a.doc_dir 'ri'
- assert @rdoc.ri_installed?
+ assert @hook.ri_installed?
end
def test_setup
- @rdoc.setup
+ @hook.setup
assert_path_exists @a.doc_dir
end
@@ -236,12 +245,16 @@ class TestGemRDoc < Gem::TestCase
FileUtils.chmod 0, @a.doc_dir
e = assert_raises Gem::FilePermissionError do
- @rdoc.setup
+ @hook.setup
end
assert_equal @a.doc_dir, e.directory
ensure
- FileUtils.chmod(0755, @a.doc_dir) if File.directory?(@a.doc_dir)
+ if File.exist? @a.doc_dir
+ FileUtils.chmod 0755, @a.doc_dir
+ FileUtils.rm_r @a.doc_dir
+ end
end
end
+