review 2.3.0 → 2.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +90 -66
  3. data/.travis.yml +1 -1
  4. data/Gemfile +0 -1
  5. data/NEWS.ja.md +82 -0
  6. data/NEWS.md +83 -0
  7. data/README.md +5 -3
  8. data/Rakefile +8 -8
  9. data/bin/review +1 -5
  10. data/bin/review-catalog-converter +22 -27
  11. data/bin/review-check +36 -43
  12. data/bin/review-checkdep +10 -15
  13. data/bin/review-compile +37 -55
  14. data/bin/review-epubmaker +4 -5
  15. data/bin/review-index +21 -29
  16. data/bin/review-init +26 -37
  17. data/bin/review-pdfmaker +0 -2
  18. data/bin/review-preproc +25 -45
  19. data/bin/review-validate +19 -18
  20. data/bin/review-vol +15 -27
  21. data/doc/config.yml.sample +5 -2
  22. data/doc/format.ja.md +20 -1
  23. data/doc/format.md +21 -5
  24. data/doc/images/review-generate.png +0 -0
  25. data/lib/epubmaker.rb +1 -3
  26. data/lib/epubmaker/content.rb +24 -27
  27. data/lib/epubmaker/epubcommon.rb +135 -148
  28. data/lib/epubmaker/epubv2.rb +39 -46
  29. data/lib/epubmaker/epubv3.rb +93 -103
  30. data/lib/epubmaker/producer.rb +138 -151
  31. data/lib/epubmaker/zip_exporter.rb +21 -26
  32. data/lib/review/book.rb +3 -6
  33. data/lib/review/book/base.rb +78 -103
  34. data/lib/review/book/chapter.rb +36 -40
  35. data/lib/review/book/compilable.rb +28 -31
  36. data/lib/review/book/image_finder.rb +6 -13
  37. data/lib/review/book/index.rb +100 -121
  38. data/lib/review/book/page_metric.rb +2 -7
  39. data/lib/review/book/part.rb +18 -20
  40. data/lib/review/book/volume.rb +9 -13
  41. data/lib/review/builder.rb +81 -116
  42. data/lib/review/catalog.rb +15 -19
  43. data/lib/review/compiler.rb +64 -83
  44. data/lib/review/configure.rb +87 -97
  45. data/lib/review/converter.rb +2 -7
  46. data/lib/review/epubbuilder.rb +1 -3
  47. data/lib/review/epubmaker.rb +213 -205
  48. data/lib/review/exception.rb +2 -4
  49. data/lib/review/extentions.rb +0 -1
  50. data/lib/review/extentions/hash.rb +2 -2
  51. data/lib/review/extentions/string.rb +5 -30
  52. data/lib/review/htmlbuilder.rb +320 -375
  53. data/lib/review/htmltoc.rb +4 -7
  54. data/lib/review/htmlutils.rb +29 -32
  55. data/lib/review/i18n.rb +33 -44
  56. data/lib/review/i18n.yml +3 -3
  57. data/lib/review/idgxmlbuilder.rb +309 -345
  58. data/lib/review/latexbuilder.rb +175 -212
  59. data/lib/review/latexindex.rb +2 -8
  60. data/lib/review/latexutils.rb +33 -43
  61. data/lib/review/lineinput.rb +1 -1
  62. data/lib/review/logger.rb +21 -0
  63. data/lib/review/makerhelper.rb +1 -4
  64. data/lib/review/markdownbuilder.rb +44 -53
  65. data/lib/review/md2inaobuilder.rb +6 -12
  66. data/lib/review/pdfmaker.rb +143 -173
  67. data/lib/review/preprocessor.rb +64 -101
  68. data/lib/review/rstbuilder.rb +126 -158
  69. data/lib/review/sec_counter.rb +18 -34
  70. data/lib/review/template.rb +4 -5
  71. data/lib/review/textbuilder.rb +2 -3
  72. data/lib/review/textutils.rb +7 -13
  73. data/lib/review/tocparser.rb +31 -56
  74. data/lib/review/tocprinter.rb +26 -52
  75. data/lib/review/topbuilder.rb +219 -247
  76. data/lib/review/unfold.rb +15 -24
  77. data/lib/review/version.rb +1 -1
  78. data/lib/review/webmaker.rb +75 -99
  79. data/lib/review/webtocprinter.rb +15 -20
  80. data/lib/review/yamlloader.rb +13 -15
  81. data/review.gemspec +20 -22
  82. data/templates/latex/layout.tex.erb +2 -2
  83. data/templates/opf/epubv2.opf.erb +7 -7
  84. data/templates/opf/epubv3.opf.erb +7 -7
  85. data/templates/web/html/layout-html5.html.erb +2 -2
  86. data/test/assets/black.eps +280 -0
  87. data/test/assets/fit.png +0 -0
  88. data/test/assets/large.gif +0 -0
  89. data/test/assets/large.jpg +0 -0
  90. data/test/assets/large.png +0 -0
  91. data/test/assets/large.svg +65 -0
  92. data/test/assets/test_template.tex +1 -1
  93. data/test/book_test_helper.rb +2 -2
  94. data/test/run_test.rb +4 -4
  95. data/test/sample-book/src/Rakefile +21 -22
  96. data/test/syntax-book/Gemfile +4 -0
  97. data/test/syntax-book/Rakefile +72 -0
  98. data/test/syntax-book/appA.re +22 -0
  99. data/test/syntax-book/bib.re +6 -0
  100. data/test/syntax-book/catalog.yml +15 -0
  101. data/test/syntax-book/ch01.re +136 -0
  102. data/test/syntax-book/ch02.re +351 -0
  103. data/test/syntax-book/ch03.re +82 -0
  104. data/test/syntax-book/config.yml +35 -0
  105. data/test/syntax-book/images/ball.png +0 -0
  106. data/test/syntax-book/images/cover.jpg +0 -0
  107. data/test/syntax-book/images/fractal.png +0 -0
  108. data/test/syntax-book/images/img3-1.png +0 -0
  109. data/test/syntax-book/images/inlineicon.jpg +0 -0
  110. data/test/syntax-book/images/logic.png +0 -0
  111. data/test/syntax-book/images/logic2.png +0 -0
  112. data/test/syntax-book/images/puzzle.jpg +0 -0
  113. data/test/syntax-book/images/table.jpg +0 -0
  114. data/test/syntax-book/part2.re +6 -0
  115. data/test/syntax-book/pre01.re +26 -0
  116. data/test/syntax-book/review-ext.rb +14 -0
  117. data/test/syntax-book/sty/jumoline.sty +310 -0
  118. data/test/syntax-book/sty/reviewmacro.sty +39 -0
  119. data/test/syntax-book/style.css +494 -0
  120. data/test/syntax-book/syntax.dic +2 -0
  121. data/test/test_book.rb +106 -111
  122. data/test/test_book_chapter.rb +21 -22
  123. data/test/test_book_part.rb +3 -5
  124. data/test/test_builder.rb +11 -22
  125. data/test/test_catalog.rb +17 -18
  126. data/test/test_catalog_converter_cmd.rb +5 -5
  127. data/test/test_compiler.rb +18 -16
  128. data/test/test_configure.rb +35 -38
  129. data/test/test_converter.rb +3 -4
  130. data/test/test_epub3maker.rb +136 -117
  131. data/test/test_epubmaker.rb +107 -114
  132. data/test/test_epubmaker_cmd.rb +2 -4
  133. data/test/test_extentions_hash.rb +32 -33
  134. data/test/test_helper.rb +9 -11
  135. data/test/test_htmlbuilder.rb +454 -420
  136. data/test/test_htmltoc.rb +8 -12
  137. data/test/test_htmlutils.rb +0 -2
  138. data/test/test_i18n.rb +159 -150
  139. data/test/test_idgxmlbuilder.rb +190 -197
  140. data/test/test_image_finder.rb +21 -22
  141. data/test/test_index.rb +24 -29
  142. data/test/test_latexbuilder.rb +274 -264
  143. data/test/test_lineinput.rb +7 -10
  144. data/test/test_location.rb +7 -7
  145. data/test/test_makerhelper.rb +13 -25
  146. data/test/test_markdownbuilder.rb +23 -26
  147. data/test/test_md2inaobuilder.rb +8 -11
  148. data/test/test_pdfmaker.rb +114 -123
  149. data/test/test_pdfmaker_cmd.rb +1 -3
  150. data/test/test_review_ext.rb +3 -5
  151. data/test/test_rstbuilder.rb +92 -97
  152. data/test/test_template.rb +3 -7
  153. data/test/test_textutils.rb +27 -27
  154. data/test/test_tocparser.rb +2 -2
  155. data/test/test_topbuilder.rb +98 -103
  156. data/test/test_webtocprinter.rb +5 -6
  157. data/test/test_yamlloader.rb +42 -42
  158. data/test/test_zip_exporter.rb +12 -18
  159. metadata +86 -9
  160. data/lib/review/ewbbuilder.rb +0 -382
@@ -0,0 +1,2 @@
1
+ 索引 さくいん
2
+ 辞書ファイル じしょふぁいる
@@ -1,5 +1,3 @@
1
- # encoding: utf-8
2
-
3
1
  require 'book_test_helper'
4
2
 
5
3
  class BookTest < Test::Unit::TestCase
@@ -31,9 +29,7 @@ class BookTest < Test::Unit::TestCase
31
29
  test_const = "ReVIEW__BOOK__TEST__#{num}"
32
30
  begin
33
31
  Dir.mktmpdir do |dir|
34
- File.open(File.join(dir, 'review-ext.rb'), 'w') do |o|
35
- o.puts "#{test_const} = #{num}"
36
- end
32
+ File.open(File.join(dir, 'review-ext.rb'), 'w') { |o| o.puts "#{test_const} = #{num}" }
37
33
  Book.update_rubyenv(dir)
38
34
  assert_equal num, (Object.class_eval { const_get(test_const) })
39
35
  end
@@ -47,95 +43,95 @@ class BookTest < Test::Unit::TestCase
47
43
  assert_equal '.re', book.ext
48
44
  end
49
45
 
50
- def test_read_CHAPS
46
+ def test_read_chaps
51
47
  Dir.mktmpdir do |dir|
52
48
  book = Book::Base.new(dir)
53
- assert_equal "", book.read_CHAPS
49
+ assert_equal '', book.read_chaps
54
50
 
55
51
  chaps_path = File.join(dir, 'CHAPS')
56
52
  re1_path = File.join(dir, "123#{book.ext}")
57
53
  re2_path = File.join(dir, "456#{book.ext}")
58
54
 
59
- File.open(chaps_path, 'w') {|o| o.print "abc\n" }
60
- File.open(re1_path, 'w') {|o| o.print "123\n" }
61
- File.open(re2_path, 'w') {|o| o.print "456\n" }
55
+ File.open(chaps_path, 'w') { |o| o.print "abc\n" }
56
+ File.open(re1_path, 'w') { |o| o.print "123\n" }
57
+ File.open(re2_path, 'w') { |o| o.print "456\n" }
62
58
 
63
- assert_equal "abc\n", book.read_CHAPS
59
+ assert_equal "abc\n", book.read_chaps
64
60
 
65
61
  File.unlink(chaps_path)
66
- assert_equal "#{re1_path}\n#{re2_path}", book.read_CHAPS
62
+ assert_equal "#{re1_path}\n#{re2_path}", book.read_chaps
67
63
 
68
64
  File.unlink(re1_path)
69
- assert_equal "#{re2_path}", book.read_CHAPS
65
+ assert_equal re2_path, book.read_chaps
70
66
 
71
67
  File.unlink(re2_path)
72
- assert_equal "", book.read_CHAPS
68
+ assert_equal '', book.read_chaps
73
69
  end
74
70
  end
75
71
 
76
- def test_read_PART
72
+ def test_read_part
77
73
  Dir.mktmpdir do |dir|
78
74
  book = Book::Base.new(dir)
79
75
  assert !book.part_exist?
80
76
  assert_raises Errno::ENOENT do # XXX: OK?
81
- book.read_PART
77
+ book.read_part
82
78
  end
83
79
 
84
80
  chaps_path = File.join(dir, 'PART')
85
81
  chaps_content = "abc\n"
86
- File.open(chaps_path, 'w') {|o| o.print chaps_content }
82
+ File.open(chaps_path, 'w') { |o| o.print chaps_content }
87
83
 
88
84
  assert book.part_exist?
89
- assert_equal chaps_content, book.read_PART
85
+ assert_equal chaps_content, book.read_part
90
86
 
91
- File.open(chaps_path, 'w') {|o| o.print "XYZ\n" }
92
- assert_equal chaps_content, book.read_PART
87
+ File.open(chaps_path, 'w') { |o| o.print "XYZ\n" }
88
+ assert_equal chaps_content, book.read_part
93
89
  end
94
90
  end
95
91
 
96
- def test_read_APPENDIX
92
+ def test_read_appendix
97
93
  Dir.mktmpdir do |dir|
98
94
  book = Book::Base.new(dir)
99
- assert_equal "", book.read_APPENDIX
95
+ assert_equal '', book.read_appendix
100
96
 
101
97
  post_path = File.join(dir, 'POSTDEF')
102
98
  re1_path = File.join(dir, "123#{book.ext}")
103
99
  re2_path = File.join(dir, "456#{book.ext}")
104
100
 
105
- File.open(post_path, 'w') {|o| o.print "abc\n" }
106
- File.open(re1_path, 'w') {|o| o.print "123\n" }
107
- File.open(re2_path, 'w') {|o| o.print "456\n" }
101
+ File.open(post_path, 'w') { |o| o.print "abc\n" }
102
+ File.open(re1_path, 'w') { |o| o.print "123\n" }
103
+ File.open(re2_path, 'w') { |o| o.print "456\n" }
108
104
 
109
- assert_equal "abc\n", book.read_APPENDIX
105
+ assert_equal "abc\n", book.read_appendix
110
106
 
111
107
  File.unlink(post_path)
112
- assert_equal "#{re1_path}\n#{re2_path}", book.read_APPENDIX
108
+ assert_equal "#{re1_path}\n#{re2_path}", book.read_appendix
113
109
 
114
110
  File.unlink(re1_path)
115
- assert_equal "#{re2_path}", book.read_APPENDIX
111
+ assert_equal re2_path, book.read_appendix
116
112
 
117
113
  File.unlink(re2_path)
118
- assert_equal "", book.read_APPENDIX
114
+ assert_equal '', book.read_appendix
119
115
  end
120
116
  end
121
117
 
122
- def test_read_POSTDEF
118
+ def test_read_postdef
123
119
  Dir.mktmpdir do |dir|
124
120
  book = Book::Base.new(dir)
125
- assert_equal "", book.read_POSTDEF
121
+ assert_equal '', book.read_postdef
126
122
 
127
123
  post_path = File.join(dir, 'POSTDEF')
128
124
  re1_path = File.join(dir, "123#{book.ext}")
129
125
  re2_path = File.join(dir, "456#{book.ext}")
130
126
 
131
- File.open(post_path, 'w') {|o| o.print "abc\n" }
132
- File.open(re1_path, 'w') {|o| o.print "123\n" }
133
- File.open(re2_path, 'w') {|o| o.print "456\n" }
127
+ File.open(post_path, 'w') { |o| o.print "abc\n" }
128
+ File.open(re1_path, 'w') { |o| o.print "123\n" }
129
+ File.open(re2_path, 'w') { |o| o.print "456\n" }
134
130
 
135
- assert_equal "", book.read_POSTDEF
131
+ assert_equal '', book.read_postdef
136
132
 
137
133
  File.unlink(post_path)
138
- assert_equal "", book.read_POSTDEF
134
+ assert_equal '', book.read_postdef
139
135
  end
140
136
  end
141
137
 
@@ -146,9 +142,8 @@ class BookTest < Test::Unit::TestCase
146
142
  assert_raises Errno::ENOENT do # XXX: OK?
147
143
  book.read_bib
148
144
  end
149
-
150
145
  bib_path = File.join(dir, "bib#{book.ext}")
151
- File.open(bib_path, 'w') {|o| o.print "abc\n" }
146
+ File.open(bib_path, 'w') { |o| o.print "abc\n" }
152
147
 
153
148
  assert book.bib_exist?
154
149
  assert_equal "abc\n", book.read_bib
@@ -156,39 +151,39 @@ class BookTest < Test::Unit::TestCase
156
151
  end
157
152
 
158
153
  # backward compatible
159
- def test_setParameter
154
+ def test_set_parameter
160
155
  book = Book::Base.new(File.dirname(__FILE__))
161
156
  book.config = :test
162
157
  assert_equal :test, book.config
163
158
  end
164
159
 
165
- def test_setConfig
160
+ def test_set_config
166
161
  book = Book::Base.new(File.dirname(__FILE__))
167
162
  book.config = :test
168
163
  assert_equal :test, book.config
169
164
  end
170
165
 
171
166
  def test_parse_chapters
172
- mktmpbookdir 'CHAPS' => '' do |dir, book, files|
167
+ mktmpbookdir 'CHAPS' => '' do |_dir, book, _files|
173
168
  parts = book.instance_eval { parse_chapters }
174
169
  assert_equal 0, parts.size
175
170
  end
176
171
 
177
- mktmpbookdir 'CHAPS' => "chapter1.re\nchapter2\n" do |dir, book, files|
172
+ mktmpbookdir 'CHAPS' => "chapter1.re\nchapter2\n" do |dir, book, _files|
178
173
  parts = book.instance_eval { parse_chapters }
179
174
  assert_equal 1, parts.size
180
175
 
181
176
  assert_equal nil, parts[0].number
182
177
  assert_equal 2, parts[0].chapters.size
183
- chaps = parts[0].chapters.map {|ch| [ch.number, ch.name, ch.path] }
178
+ chaps = parts[0].chapters.map { |ch| [ch.number, ch.name, ch.path] }
184
179
  expect = [
185
180
  [1, 'chapter1', File.join(dir, 'chapter1.re')],
186
- [2, 'chapter2', File.join(dir, 'chapter2')],
181
+ [2, 'chapter2', File.join(dir, 'chapter2')]
187
182
  ]
188
183
  assert_equal expect, chaps
189
184
  end
190
185
 
191
- mktmpbookdir 'CHAPS' => <<EOC do |dir, book, files|
186
+ mktmpbookdir 'CHAPS' => <<EOC do |dir, book, _files|
192
187
  part1_chapter1.re
193
188
  part1_chapter2.re
194
189
 
@@ -204,28 +199,28 @@ EOC
204
199
 
205
200
  assert_equal nil, parts[0].number
206
201
  assert_equal 2, parts[0].chapters.size
207
- chaps = parts[0].chapters.map {|ch| [ch.number, ch.name, ch.path] }
202
+ chaps = parts[0].chapters.map { |ch| [ch.number, ch.name, ch.path] }
208
203
  expect = [
209
204
  [1, 'part1_chapter1', File.join(dir, 'part1_chapter1.re')],
210
- [2, 'part1_chapter2', File.join(dir, 'part1_chapter2.re')],
205
+ [2, 'part1_chapter2', File.join(dir, 'part1_chapter2.re')]
211
206
  ]
212
207
  assert_equal expect, chaps
213
208
 
214
209
  assert_equal nil, parts[1].number
215
210
  assert_equal 3, parts[1].chapters.size
216
- chaps = parts[1].chapters.map {|ch| [ch.number, ch.name, ch.path] }
211
+ chaps = parts[1].chapters.map { |ch| [ch.number, ch.name, ch.path] }
217
212
  expect = [
218
213
  [3, 'part2_chapter1', File.join(dir, 'part2_chapter1.re')],
219
214
  [4, 'part2_chapter2', File.join(dir, 'part2_chapter2.re')],
220
- [5, 'part2_chapter3', File.join(dir, 'part2_chapter3.re')],
215
+ [5, 'part2_chapter3', File.join(dir, 'part2_chapter3.re')]
221
216
  ]
222
217
  assert_equal expect, chaps
223
218
 
224
219
  assert_equal nil, parts[2].number
225
220
  assert_equal 1, parts[2].chapters.size
226
- chaps = parts[2].chapters.map {|ch| [ch.number, ch.name, ch.path] }
221
+ chaps = parts[2].chapters.map { |ch| [ch.number, ch.name, ch.path] }
227
222
  expect = [
228
- [6, 'part3_chapter1', File.join(dir, 'part3_chapter1.re')],
223
+ [6, 'part3_chapter1', File.join(dir, 'part3_chapter1.re')]
229
224
  ]
230
225
  assert_equal expect, chaps
231
226
  end
@@ -239,103 +234,103 @@ EOC
239
234
  2,
240
235
  "part1_chapter1.re\n\npart2_chpater1.re\n",
241
236
  "part1\npart2\npart3\n",
242
- %w(part1 part2),
237
+ %w[part1 part2]
243
238
  ],
244
239
  [
245
240
  3,
246
241
  "part1_chapter1.re\n\npart2_chapter1.re\n\npart3_chapter1.re",
247
242
  "part1\n",
248
243
  [
249
- "part1",
250
- "", # XXX: OK?
251
- ""
252
- ],
244
+ 'part1',
245
+ '', # XXX: OK?
246
+ ''
247
+ ]
253
248
  ],
254
249
  [
255
250
  1,
256
251
  "part1_chapter1.re\n",
257
- "",
252
+ '',
258
253
  [
259
- "", # XXX: OK?
260
- ],
254
+ '', # XXX: OK?
255
+ ]
261
256
  ],
262
257
  [
263
258
  1,
264
259
  "part1_chapter1.re\n",
265
260
  nil,
266
261
  [
267
- "",
268
- ],
269
- ],
262
+ ''
263
+ ]
264
+ ]
270
265
  ].each do |n_parts, chaps_text, parts_text, part_names|
271
266
  n_test += 1
272
267
  Dir.mktmpdir do |dir|
273
268
  book = Book::Base.new(dir)
274
269
  chaps_path = File.join(dir, 'CHAPS')
275
- File.open(chaps_path, 'w') {|o| o.print chaps_text }
276
- unless parts_text.nil?
270
+ File.open(chaps_path, 'w') { |o| o.print chaps_text }
271
+ if parts_text
277
272
  parts_path = File.join(dir, 'PART')
278
- File.open(parts_path, 'w') {|o| o.print parts_text }
273
+ File.open(parts_path, 'w') { |o| o.print parts_text }
279
274
  end
280
275
 
281
276
  parts = book.instance_eval { parse_chapters }
282
- assert_equal n_parts, parts.size, "\##{n_test}"
283
- assert_equal part_names, parts.map {|p| p.name }, "\##{n_test}"
277
+ assert_equal n_parts, parts.size, "##{n_test}"
278
+ assert_equal part_names, parts.map(&:name), "##{n_test}"
284
279
  end
285
280
  end
286
281
  end
287
282
 
288
283
  def test_prefaces
289
- mktmpbookdir do |dir, book, files|
284
+ mktmpbookdir do |_dir, book, _files|
290
285
  assert_equal nil, book.prefaces
291
286
  end
292
287
 
293
- mktmpbookdir 'PREDEF' => '' do |dir, book, files|
288
+ mktmpbookdir 'PREDEF' => '' do |_dir, book, _files|
294
289
  assert_equal nil, book.prefaces # XXX: OK?
295
290
  end
296
291
 
297
292
  mktmpbookdir 'PREDEF' => 'chapter1',
298
- 'chapter1.re' => '' do |dir, book, files|
293
+ 'chapter1.re' => '' do |_dir, book, files|
299
294
  assert_kind_of Book::Part, book.prefaces
300
295
  assert_equal '', book.prefaces.name
301
296
  assert_equal 1, book.prefaces.chapters.size
302
- assert_equal "chapter1", book.prefaces.chapters.first.name
297
+ assert_equal 'chapter1', book.prefaces.chapters.first.name
303
298
  assert_equal files['chapter1.re'], book.prefaces.chapters.first.path
304
299
  end
305
300
 
306
301
  mktmpbookdir 'PREDEF' => "chapter1\n\nchapter2",
307
- 'chapter1.re' => '', 'chapter2.re' => '' do |dir, book, files|
302
+ 'chapter1.re' => '', 'chapter2.re' => '' do |_dir, book, files|
308
303
  assert_kind_of Book::Part, book.prefaces
309
304
  assert_equal '', book.prefaces.name
310
305
  assert_equal 2, book.prefaces.chapters.size
311
- assert_equal "chapter1", book.prefaces.chapters.first.name
306
+ assert_equal 'chapter1', book.prefaces.chapters.first.name
312
307
  assert_equal files['chapter1.re'], book.prefaces.chapters.first.path
313
- assert_equal "chapter2", book.prefaces.chapters.last.name
308
+ assert_equal 'chapter2', book.prefaces.chapters.last.name
314
309
  assert_equal files['chapter2.re'], book.prefaces.chapters.last.path
315
310
  end
316
311
 
317
- mktmpbookdir 'PREDEF' => "chapter1 chapter2",
318
- 'chapter1.re' => '', 'chapter2.re' => '' do |dir, book, files|
312
+ mktmpbookdir 'PREDEF' => 'chapter1 chapter2',
313
+ 'chapter1.re' => '', 'chapter2.re' => '' do |_dir, book, _files|
319
314
  assert_kind_of Book::Part, book.prefaces
320
315
  assert_equal '', book.prefaces.name
321
316
  assert_equal 2, book.prefaces.chapters.size # XXX: OK?
322
317
  end
323
318
 
324
- mktmpbookdir 'PREDEF' => 'not_exist' do |dir, book, files|
319
+ mktmpbookdir 'PREDEF' => 'not_exist' do |_dir, book, _files|
325
320
  assert_raises FileNotFound do
326
321
  assert_equal nil, book.prefaces
327
322
  end
328
323
  end
329
324
 
330
325
  mktmpbookdir 'PREDEF' => 'chapter1.re',
331
- 'chapter1.re' => '' do |dir, book, files|
326
+ 'chapter1.re' => '' do |_dir, book, _files|
332
327
  assert_kind_of Book::Part, book.prefaces
333
328
  assert_equal '', book.prefaces.name
334
329
  assert_equal 1, book.prefaces.chapters.size
335
330
  end
336
331
 
337
332
  mktmpbookdir 'PREDEF' => 'chapter1.txt',
338
- 'chapter1.txt' => '' do |dir, book, files|
333
+ 'chapter1.txt' => '' do |_dir, book, _files|
339
334
  assert_kind_of Book::Part, book.prefaces
340
335
  assert_equal '', book.prefaces.name
341
336
  assert_equal 1, book.prefaces.chapters.size
@@ -343,39 +338,39 @@ EOC
343
338
  end
344
339
 
345
340
  def test_appendix
346
- mktmpbookdir do |dir, book, files|
341
+ mktmpbookdir do |_dir, book, _files|
347
342
  assert_equal nil, book.appendix
348
343
  end
349
344
 
350
- mktmpbookdir 'POSTDEF' => '' do |dir, book, files|
345
+ mktmpbookdir 'POSTDEF' => '' do |_dir, book, _files|
351
346
  assert_equal nil, book.appendix
352
347
  end
353
348
 
354
349
  mktmpbookdir 'POSTDEF' => 'chapter1',
355
- 'chapter1.re' => '' do |dir, book, files|
350
+ 'chapter1.re' => '' do |_dir, book, files|
356
351
  assert_kind_of Book::Part, book.appendix
357
352
  assert_equal '', book.appendix.name
358
353
  assert_equal 1, book.appendix.chapters.size
359
- assert_equal "chapter1", book.appendix.chapters.first.name
354
+ assert_equal 'chapter1', book.appendix.chapters.first.name
360
355
  assert_equal files['chapter1.re'], book.appendix.chapters.first.path
361
356
  assert_equal 1, book.appendix.chapters.first.number
362
357
  end
363
358
 
364
359
  mktmpbookdir 'POSTDEF' => "chapter1\n\nchapter2",
365
- 'chapter1.re' => '', 'chapter2.re' => '' do |dir, book, files|
360
+ 'chapter1.re' => '', 'chapter2.re' => '' do |_dir, book, files|
366
361
  assert_kind_of Book::Part, book.appendix
367
362
  assert_equal '', book.appendix.name
368
363
  assert_equal 2, book.appendix.chapters.size
369
- assert_equal "chapter1", book.appendix.chapters.first.name
364
+ assert_equal 'chapter1', book.appendix.chapters.first.name
370
365
  assert_equal files['chapter1.re'], book.appendix.chapters.first.path
371
- assert_equal "chapter2", book.appendix.chapters.last.name
366
+ assert_equal 'chapter2', book.appendix.chapters.last.name
372
367
  assert_equal files['chapter2.re'], book.appendix.chapters.last.path
373
368
  assert_equal 1, book.appendix.chapters.first.number
374
369
  assert_equal 2, book.appendix.chapters.last.number
375
370
  end
376
371
 
377
- mktmpbookdir 'POSTDEF' => "chapter1 chapter2",
378
- 'chapter1.re' => '', 'chapter2.re' => '' do |dir, book, files|
372
+ mktmpbookdir 'POSTDEF' => 'chapter1 chapter2',
373
+ 'chapter1.re' => '', 'chapter2.re' => '' do |_dir, book, _files|
379
374
  assert_kind_of Book::Part, book.appendix
380
375
  assert_equal '', book.appendix.name
381
376
  assert_equal 2, book.appendix.chapters.size # XXX: OK?
@@ -383,14 +378,14 @@ EOC
383
378
  assert_equal 2, book.appendix.chapters.last.number
384
379
  end
385
380
 
386
- mktmpbookdir 'POSTDEF' => 'not_exist' do |dir, book, files|
381
+ mktmpbookdir 'POSTDEF' => 'not_exist' do |_dir, book, _files|
387
382
  assert_raises FileNotFound do
388
383
  assert_equal nil, book.appendix
389
384
  end
390
385
  end
391
386
 
392
387
  mktmpbookdir 'catalog.yml' => "APPENDIX:\n - p01.re",
393
- 'p01.re' => '= appendix' do |dir, book, files|
388
+ 'p01.re' => '= appendix' do |_dir, book, _files|
394
389
  assert_equal 'appendix', book.appendix.chapters.first.title
395
390
  assert_equal 1, book.appendix.chapters.first.number
396
391
  end
@@ -398,7 +393,7 @@ EOC
398
393
 
399
394
  def test_postscripts
400
395
  mktmpbookdir 'catalog.yml' => "POSTDEF:\n - b01.re",
401
- 'b01.re' => '= back' do |dir, book, files|
396
+ 'b01.re' => '= back' do |_dir, book, _files|
402
397
  assert_kind_of Book::Part, book.postscripts
403
398
  assert_equal 1, book.postscripts.chapters.size
404
399
  assert_equal 'back', book.postscripts.chapters.first.title
@@ -407,7 +402,7 @@ EOC
407
402
  end
408
403
 
409
404
  def test_parts
410
- mktmpbookdir do |dir, book, files|
405
+ mktmpbookdir do |_dir, book, _files|
411
406
  assert book.parts.empty?
412
407
  assert !book.part(0)
413
408
  assert !book.part(1)
@@ -417,28 +412,28 @@ EOC
417
412
  assert tmp.empty?
418
413
  end
419
414
 
420
- mktmpbookdir 'CHAPS' => "ch1\nch2\n\nch3", 'PART' => "foo\nbar\n" do |dir, book, files|
415
+ mktmpbookdir 'CHAPS' => "ch1\nch2\n\nch3", 'PART' => "foo\nbar\n" do |_dir, book, _files|
421
416
  parts = book.parts
422
417
  assert_equal 2, parts.size
423
418
  assert !book.part(0)
424
- assert_equal "foo", book.part(1).name
425
- assert_equal "bar", book.part(2).name
419
+ assert_equal 'foo', book.part(1).name
420
+ assert_equal 'bar', book.part(2).name
426
421
  assert !book.part(3)
427
422
 
428
423
  tmp = []
429
- book.each_part {|p| tmp << p.number }
424
+ book.each_part { |p| tmp << p.number }
430
425
  assert_equal [1, 2], tmp
431
426
  end
432
427
  end
433
428
 
434
429
  def test_chapters
435
- mktmpbookdir 'CHAPS' => "ch1\nch2\n\nch3" do |dir, book, files|
430
+ mktmpbookdir 'CHAPS' => "ch1\nch2\n\nch3" do |_dir, book, _files|
436
431
  chapters = book.chapters
437
432
  assert_equal 3, chapters.size
438
433
 
439
- ch_names = %w(ch1 ch2 ch3)
434
+ ch_names = %w[ch1 ch2 ch3]
440
435
  tmp = []
441
- book.each_chapter {|ch| tmp << ch.name }
436
+ book.each_chapter { |ch| tmp << ch.name }
442
437
  assert_equal ch_names, tmp
443
438
 
444
439
  ch_names.each do |name|
@@ -451,13 +446,13 @@ EOC
451
446
  end
452
447
  end
453
448
 
454
- mktmpbookdir 'CHAPS' => "ch1.txt\nch2.txt\n\nch3.txt" do |dir, book, files|
449
+ mktmpbookdir 'CHAPS' => "ch1.txt\nch2.txt\n\nch3.txt" do |_dir, book, _files|
455
450
  chapters = book.chapters
456
451
  assert_equal 3, chapters.size
457
452
 
458
- ch_names = %w(ch1 ch2 ch3)
453
+ ch_names = %w[ch1 ch2 ch3]
459
454
  tmp = []
460
- book.each_chapter {|ch| tmp << ch.name }
455
+ book.each_chapter { |ch| tmp << ch.name }
461
456
  assert_equal ch_names, tmp
462
457
 
463
458
  ch_names.each do |name|
@@ -472,7 +467,7 @@ EOC
472
467
  end
473
468
 
474
469
  def test_next_chapter
475
- mktmpbookdir 'CHAPS' => "ch1\nch2" do |dir, book, files|
470
+ mktmpbookdir 'CHAPS' => "ch1\nch2" do |_dir, book, _files|
476
471
  chapter = book.chapter('ch1')
477
472
  assert_equal book.chapter('ch2'), book.next_chapter(chapter)
478
473
 
@@ -482,7 +477,7 @@ EOC
482
477
  end
483
478
 
484
479
  def test_prev_chapter
485
- mktmpbookdir 'CHAPS' => "ch1\nch2" do |dir, book, files|
480
+ mktmpbookdir 'CHAPS' => "ch1\nch2" do |_dir, book, _files|
486
481
  chapter = book.chapter('ch2')
487
482
  assert_equal book.chapter('ch1'), book.prev_chapter(chapter)
488
483
 
@@ -492,21 +487,21 @@ EOC
492
487
  end
493
488
 
494
489
  def test_volume
495
- mktmpbookdir do |dir, book, files|
490
+ mktmpbookdir do |_dir, book, _files|
496
491
  assert book.volume
497
492
  assert_equal 0, book.volume.bytes
498
493
  assert_equal 0, book.volume.chars
499
494
  assert_equal 0, book.volume.lines
500
495
  end
501
496
 
502
- mktmpbookdir 'CHAPS' => 'chapter1.re', 'chapter1.re' => '12345' do |dir, book, files|
497
+ mktmpbookdir 'CHAPS' => 'chapter1.re', 'chapter1.re' => '12345' do |_dir, book, _files|
503
498
  assert book.volume
504
499
  assert book.volume.bytes > 0
505
500
  assert book.volume.chars > 0
506
501
  assert book.volume.lines > 0
507
502
  end
508
503
 
509
- mktmpbookdir 'preface.re' => '12345' do |dir, book, files|
504
+ mktmpbookdir 'preface.re' => '12345' do |dir, _book, _files|
510
505
  Dir.chdir(dir) do
511
506
  book2 = Book::Base.new('.')
512
507
  assert book2.volume
@@ -532,18 +527,18 @@ EOC
532
527
  end
533
528
 
534
529
  def test_page_metric_config
535
- mktmpbookdir('config.yml'=>"bookname: book\npage_metric: B5\n") do |dir, book, files|
530
+ mktmpbookdir('config.yml' => "bookname: book\npage_metric: B5\n") do |dir, _book, _files|
536
531
  book = Book::Base.new(dir)
537
- config_file = File.join(dir,"config.yml")
532
+ config_file = File.join(dir, 'config.yml')
538
533
  book.load_config(config_file)
539
534
  assert_equal ReVIEW::Book::PageMetric::B5, book.page_metric
540
535
  end
541
536
  end
542
537
 
543
538
  def test_page_metric_config_array
544
- mktmpbookdir('config.yml'=>"bookname: book\npage_metric: [46, 80, 30, 74, 2]\n") do |dir, book, files|
539
+ mktmpbookdir('config.yml' => "bookname: book\npage_metric: [46, 80, 30, 74, 2]\n") do |dir, _book, _files|
545
540
  book = Book::Base.new(dir)
546
- config_file = File.join(dir,"config.yml")
541
+ config_file = File.join(dir, 'config.yml')
547
542
  book.load_config(config_file)
548
543
  assert_equal ReVIEW::Book::PageMetric::B5, book.page_metric
549
544
  end