Skip to content

Commit 9b0b5e5

Browse files
committed
Reduced diff with RubyGems::RDoc
1 parent 3a34c2c commit 9b0b5e5

File tree

2 files changed

+41
-20
lines changed

2 files changed

+41
-20
lines changed

lib/rdoc/rubygems_hook.rb

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,10 +68,12 @@ def self.load_rdoc
6868

6969
##
7070
# Creates a new documentation generator for +spec+. RDoc and ri data
71-
# generation can be disabled through +generate_rdoc+ and +generate_ri+
72-
# respectively.
71+
# generation can be enabled or disabled through +generate_rdoc+ and
72+
# +generate_ri+ respectively.
73+
#
74+
# Only +generate_ri+ is enabled by default.
7375

74-
def initialize spec, generate_rdoc = true, generate_ri = true
76+
def initialize spec, generate_rdoc = false, generate_ri = true
7577
@doc_dir = spec.doc_dir
7678
@force = false
7779
@rdoc = nil

test/test_rdoc_rubygems_hook.rb

Lines changed: 36 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ def setup
3232
end
3333

3434
def test_initialize
35-
assert @hook.generate_rdoc
35+
refute @hook.generate_rdoc
3636
assert @hook.generate_ri
3737

3838
rdoc = RDoc::RubygemsHook.new @a, false, false
@@ -74,6 +74,27 @@ def test_generate
7474

7575
@hook.generate
7676

77+
refute @hook.rdoc_installed?
78+
assert @hook.ri_installed?
79+
80+
rdoc = @hook.instance_variable_get :@rdoc
81+
82+
refute rdoc.options.hyperlink_all
83+
assert_equal Pathname(@a.full_gem_path), rdoc.options.root
84+
assert_equal %w[README lib], rdoc.options.files.sort
85+
86+
assert_equal 'MyTitle', rdoc.store.main
87+
end
88+
89+
def test_generate_all
90+
@hook.generate_rdoc = true
91+
@hook.generate_ri = true
92+
93+
FileUtils.mkdir_p @a.doc_dir
94+
FileUtils.mkdir_p File.join(@a.gem_dir, 'lib')
95+
96+
@hook.generate
97+
7798
assert @hook.rdoc_installed?
7899
assert @hook.ri_installed?
79100

@@ -145,7 +166,7 @@ def test_generate_force
145166

146167
@hook.generate
147168

148-
assert_path_exists File.join(@a.doc_dir('rdoc'), 'index.html')
169+
refute_path_exists File.join(@a.doc_dir('rdoc'), 'index.html')
149170
assert_path_exists File.join(@a.doc_dir('ri'), 'cache.ri')
150171
end
151172

@@ -195,7 +216,7 @@ def test_remove_unwritable
195216

196217
assert_equal @a.base_dir, e.directory
197218
ensure
198-
FileUtils.chmod 0755, @a.base_dir
219+
FileUtils.chmod(0755, @a.base_dir) if File.directory?(@a.base_dir)
199220
end
200221

201222
def test_ri_installed?
@@ -214,20 +235,18 @@ def test_setup
214235

215236
def test_setup_unwritable
216237
skip 'chmod not supported' if Gem.win_platform?
217-
begin
218-
FileUtils.mkdir_p @a.doc_dir
219-
FileUtils.chmod 0, @a.doc_dir
220-
221-
e = assert_raises Gem::FilePermissionError do
222-
@hook.setup
223-
end
224-
225-
assert_equal @a.doc_dir, e.directory
226-
ensure
227-
if File.exist? @a.doc_dir
228-
FileUtils.chmod 0755, @a.doc_dir
229-
FileUtils.rm_r @a.doc_dir
230-
end
238+
FileUtils.mkdir_p @a.doc_dir
239+
FileUtils.chmod 0, @a.doc_dir
240+
241+
e = assert_raises Gem::FilePermissionError do
242+
@hook.setup
243+
end
244+
245+
assert_equal @a.doc_dir, e.directory
246+
ensure
247+
if File.exist? @a.doc_dir
248+
FileUtils.chmod 0755, @a.doc_dir
249+
FileUtils.rm_r @a.doc_dir
231250
end
232251
end
233252

0 commit comments

Comments
 (0)