isodoc 2.1.0.2 → 2.1.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/isodoc.gemspec +6 -3
  3. data/lib/isodoc/base_style/all.css +227 -0
  4. data/lib/isodoc/base_style/blocks.css +0 -0
  5. data/lib/isodoc/base_style/blocks.scss +7 -0
  6. data/lib/isodoc/base_style/coverpage.css +0 -0
  7. data/lib/isodoc/base_style/defaults.css +0 -0
  8. data/lib/isodoc/base_style/metanorma_word.css +47 -0
  9. data/lib/isodoc/base_style/nav.css +0 -0
  10. data/lib/isodoc/base_style/reset.css +125 -0
  11. data/lib/isodoc/base_style/typography.css +0 -0
  12. data/lib/isodoc/class_utils.rb +1 -1
  13. data/lib/isodoc/function/blocks.rb +1 -1
  14. data/lib/isodoc/function/cleanup.rb +1 -1
  15. data/lib/isodoc/function/inline.rb +4 -2
  16. data/lib/isodoc/function/lists.rb +24 -9
  17. data/lib/isodoc/function/table.rb +1 -1
  18. data/lib/isodoc/function/to_word_html.rb +3 -2
  19. data/lib/isodoc/function/utils.rb +18 -8
  20. data/lib/isodoc/gem_tasks.rb +19 -10
  21. data/lib/isodoc/html_function/html.rb +2 -2
  22. data/lib/isodoc/i18n.rb +19 -0
  23. data/lib/isodoc/metadata.rb +2 -2
  24. data/lib/isodoc/presentation_function/block.rb +3 -3
  25. data/lib/isodoc/presentation_function/image.rb +1 -1
  26. data/lib/isodoc/presentation_function/inline.rb +13 -6
  27. data/lib/isodoc/presentation_function/section.rb +3 -1
  28. data/lib/isodoc/presentation_function/xrefs.rb +22 -6
  29. data/lib/isodoc/presentation_xml_convert.rb +1 -0
  30. data/lib/isodoc/version.rb +1 -1
  31. data/lib/isodoc/word_function/body.rb +9 -6
  32. data/lib/isodoc/word_function/postprocess.rb +1 -1
  33. data/lib/isodoc/word_function/postprocess_cover.rb +5 -5
  34. data/lib/isodoc/xref/xref_gen.rb +6 -6
  35. metadata +16 -69
  36. data/.github/workflows/rake.yml +0 -15
  37. data/.github/workflows/release.yml +0 -24
  38. data/.hound.yml +0 -5
  39. data/.oss-guides.rubocop.yml +0 -1077
  40. data/.rubocop.yml +0 -10
  41. data/Rakefile +0 -8
  42. data/bin/rspec +0 -17
  43. data/spec/assets/header.html +0 -7
  44. data/spec/assets/html.scss +0 -20
  45. data/spec/assets/html_override.css +0 -1
  46. data/spec/assets/htmlcover.html +0 -4
  47. data/spec/assets/htmlintro.html +0 -5
  48. data/spec/assets/i18n.yaml +0 -41
  49. data/spec/assets/iso.xml +0 -8
  50. data/spec/assets/odf.emf +0 -0
  51. data/spec/assets/odf.svg +0 -1
  52. data/spec/assets/odf1.svg +0 -4
  53. data/spec/assets/outputtest/a.xml +0 -66
  54. data/spec/assets/outputtest/iso.international-standard.xsl +0 -3011
  55. data/spec/assets/rice_image1 +0 -0
  56. data/spec/assets/rice_image1.png +0 -0
  57. data/spec/assets/scripts.html +0 -3
  58. data/spec/assets/scripts_override.html +0 -3
  59. data/spec/assets/std.css +0 -2
  60. data/spec/assets/word.css +0 -2
  61. data/spec/assets/word_override.css +0 -1
  62. data/spec/assets/wordcover.html +0 -3
  63. data/spec/assets/wordintro.html +0 -4
  64. data/spec/isodoc/blocks_spec.rb +0 -2934
  65. data/spec/isodoc/cleanup_spec.rb +0 -1056
  66. data/spec/isodoc/footnotes_spec.rb +0 -264
  67. data/spec/isodoc/form_spec.rb +0 -160
  68. data/spec/isodoc/i18n_spec.rb +0 -1201
  69. data/spec/isodoc/inline_spec.rb +0 -2301
  70. data/spec/isodoc/lists_spec.rb +0 -469
  71. data/spec/isodoc/metadata_spec.rb +0 -401
  72. data/spec/isodoc/postproc_spec.rb +0 -2941
  73. data/spec/isodoc/presentation_xml_spec.rb +0 -1476
  74. data/spec/isodoc/ref_spec.rb +0 -955
  75. data/spec/isodoc/section_spec.rb +0 -2123
  76. data/spec/isodoc/table_spec.rb +0 -588
  77. data/spec/isodoc/terms_spec.rb +0 -712
  78. data/spec/isodoc/utils_spec.rb +0 -57
  79. data/spec/isodoc/xref_numbering_spec.rb +0 -378
  80. data/spec/isodoc/xref_spec.rb +0 -1837
  81. data/spec/isodoc/xslfo_convert_spec.rb +0 -103
  82. data/spec/spec_helper.rb +0 -81
@@ -1,1056 +0,0 @@
1
- require "spec_helper"
2
- require "nokogiri"
3
-
4
- RSpec.describe IsoDoc do
5
- it "cleans up admonitions" do
6
- expect(xmlpp(IsoDoc::WordConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
7
- <html>
8
- <body>
9
- <div class="Admonition">
10
- <title>Warning</title>
11
- <p>Text</p>
12
- </div>
13
- </body>
14
- </html>
15
- INPUT
16
- <?xml version="1.0"?>
17
- <html>
18
- <body>
19
- <div class="Admonition">
20
-
21
- <p>Warning&#x2014;Text</p>
22
- </div>
23
- </body>
24
- </html>
25
- OUTPUT
26
- end
27
-
28
- it "cleans up figures" do
29
- expect(xmlpp(IsoDoc::HtmlConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
30
- <html xmlns:epub="http://www.idpf.org/2007/ops">
31
- <body>
32
- <div class="figure">
33
- <p>Warning</p>
34
- <a href="#tableD-1a" class="TableFootnoteRef">a</a><aside><div id="ftntableD-1a"><span><span id="tableD-1a" class="TableFootnoteRef">a</span>&#160; </span>
35
- <p id="_0fe65e9a-5531-408e-8295-eeff35f41a55">Parboiled rice.</p>
36
- </div></aside>
37
- </div>
38
- </body>
39
- </html>
40
- INPUT
41
- <?xml version="1.0"?>
42
- <html xmlns:epub="http://www.idpf.org/2007/ops">
43
- <body>
44
- <div class="figure">
45
- <p>Warning</p>
46
- <aside><div id="ftntableD-1a">
47
-
48
- </div></aside>
49
- <p><b>Key</b></p><dl><dt><span><span id="tableD-1a" class="TableFootnoteRef">a</span>&#xA0; </span></dt><dd><p id="_0fe65e9a-5531-408e-8295-eeff35f41a55">Parboiled rice.</p></dd></dl></div>
50
- </body>
51
- </html>
52
- OUTPUT
53
- end
54
-
55
- it "cleans up figures (Word)" do
56
- expect(xmlpp(IsoDoc::WordConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
57
- <html xmlns:epub="http://www.idpf.org/2007/ops">
58
- <body>
59
- <div class="figure">
60
- <p>Warning</p>
61
- <a href="#tableD-1a" class="TableFootnoteRef">a</a><aside><div id="ftntableD-1a"><span><span id="tableD-1a" class="TableFootnoteRef">a</span><span style="mso-tab-count:1">&#160; </span></span>
62
- <p id="_0fe65e9a-5531-408e-8295-eeff35f41a55">Parboiled rice.</p>
63
- </div></aside>
64
- </div>
65
- </body>
66
- </html>
67
- INPUT
68
- <?xml version="1.0"?>
69
- <html xmlns:epub="http://www.idpf.org/2007/ops">
70
- <body>
71
- <div class="figure">
72
- <p>Warning</p>
73
- <aside><div id="ftntableD-1a">
74
-
75
- </div></aside>
76
- <p><b>Key</b></p><table class="dl"><tr><td valign="top" align="left"><span><span id="tableD-1a" class="TableFootnoteRef">a</span><span style="mso-tab-count:1">&#xA0; </span></span></td><td valign="top"><p id="_0fe65e9a-5531-408e-8295-eeff35f41a55">Parboiled rice.</p></td></tr></table></div>
77
- </body>
78
- </html>
79
- OUTPUT
80
- end
81
-
82
- it "cleans up inline headers" do
83
- expect(xmlpp(IsoDoc::WordConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
84
- <html xmlns:epub="http://www.idpf.org/2007/ops">
85
- <head>
86
- <title>test</title>
87
- <body lang="EN-US" link="blue" vlink="#954F72">
88
- <div class="WordSection1">
89
- <p>&#160;</p>
90
- </div>
91
- <br clear="all" class="section"/>
92
- <div class="WordSection2">
93
- <p>&#160;</p>
94
- </div>
95
- <br clear="all" class="section"/>
96
- <div class="WordSection3">
97
- <p class="zzSTDTitle1"/>
98
- <div id="M">
99
- <h1>4.<span style="mso-tab-count:1">&#160; </span>Clause 4</h1>
100
- <div id="N">
101
- <h2>4.1. Introduction</h2>
102
- </div>
103
- <div id="O">
104
- <span class="zzMoveToFollowing"><b>4.2. Clause 4.2 </b></span>
105
- </div>
106
- <div id="P">
107
- <span class="zzMoveToFollowing"><b>4.3. Clause 4.3 </b></span>
108
- <p>text</p>
109
- </div>
110
- </div>
111
- </div>
112
- </body>
113
- </head>
114
- </html>
115
- INPUT
116
- <?xml version="1.0"?>
117
- <html xmlns:epub="http://www.idpf.org/2007/ops">
118
- <head>
119
- <title>test</title>
120
- <body lang="EN-US" link="blue" vlink="#954F72">
121
- <div class="WordSection1">
122
- <p>&#xA0;</p>
123
- </div>
124
- <br clear="all" class="section"/>
125
- <div class="WordSection2">
126
- <p>&#xA0;</p>
127
- </div>
128
- <br clear="all" class="section"/>
129
- <div class="WordSection3">
130
- <p class="zzSTDTitle1"/>
131
- <div id="M">
132
- <h1>4.<span style="mso-tab-count:1">&#xA0; </span>Clause 4</h1>
133
- <div id="N">
134
- <h2>4.1. Introduction</h2>
135
- </div>
136
- <div id="O">
137
- <p><b>4.2. Clause 4.2 </b></p>
138
- </div>
139
- <div id="P">
140
-
141
- <p><span><b>4.3. Clause 4.3 </b></span>text</p>
142
- </div>
143
- </div>
144
- </div>
145
- </body>
146
- </head>
147
- </html>
148
- OUTPUT
149
- end
150
-
151
- it "cleans up footnotes" do
152
- expect(xmlpp(IsoDoc::HtmlConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
153
- #{HTML_HDR}
154
- <br/>
155
- <div>
156
- <h1 class="ForewordTitle">Foreword</h1>
157
- <p>A.<a class="FootnoteRef" href="#fn:2" epub:type="footnote"><sup>2</sup></a></p>
158
- <p>B.<a class="FootnoteRef" href="#fn:2" epub:type="footnote"><sup>2</sup></a></p>
159
- <p>C.<a class="FootnoteRef" href="#fn:1" epub:type="footnote"><sup>1</sup></a></p>
160
- </div>
161
- <p class="zzSTDTitle1"/>
162
- <aside id="fn:2" class="footnote">
163
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Formerly denoted as 15 % (m/m).</p>
164
- </aside>
165
- <aside id="fn:1" class="footnote">
166
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Hello! denoted as 15 % (m/m).</p>
167
- </aside>
168
- </div>
169
- </body>
170
- </html>
171
- INPUT
172
- #{HTML_HDR}
173
- <br/>
174
- <div>
175
- <h1 class="ForewordTitle">Foreword</h1>
176
- <p>A.<a class="FootnoteRef" href="#fn:2" epub:type="footnote"><sup>1</sup></a></p>
177
- <p>B.<a class="FootnoteRef" href="#fn:2" epub:type="footnote"><sup>2</sup></a></p>
178
- <p>C.<a class="FootnoteRef" href="#fn:1" epub:type="footnote"><sup>3</sup></a></p>
179
- </div>
180
- <p class="zzSTDTitle1"/>
181
- <aside id="fn:2" class="footnote">
182
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Formerly denoted as 15 % (m/m).</p>
183
- </aside>
184
- <aside id="fn:1" class="footnote">
185
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Hello! denoted as 15 % (m/m).</p>
186
- </aside>
187
- </div>
188
- </body>
189
- </html>
190
- OUTPUT
191
- end
192
-
193
- it "cleans up footnotes (Word)" do
194
- expect(xmlpp(IsoDoc::WordConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
195
- <html xmlns:epub="http://www.idpf.org/2007/ops" lang="en">
196
- <head/>
197
- <body lang="EN-US" link="blue" vlink="#954F72">
198
- <div class="WordSection1">
199
- <p>&#160;</p>
200
- </div>
201
- <p><br clear="all" class="section"/></p>
202
- <div class="WordSection2">
203
- <p><br clear="all" style="mso-special-character:line-break;page-break-before:always"/></p>
204
- <div>
205
- <h1 class="ForewordTitle">Foreword</h1>
206
- <p>A.<a href="#ftn1" epub:type="footnote"><sup>1</sup></a></p>
207
- <p>B.<a href="#ftn2" epub:type="footnote"><sup>2</sup></a></p>
208
- <p>C.<a href="#ftn3" epub:type="footnote"><sup>3</sup></a></p>
209
- </div>
210
- <p>&#160;</p>
211
- </div>
212
- <p><br clear="all" class="section"/></p>
213
- <div class="WordSection3">
214
- <p class="zzSTDTitle1"/>
215
- <aside id="ftn1">
216
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Formerly denoted as 15 % (m/m).</p>
217
- </aside>
218
- <aside id="ftn2">
219
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Formerly denoted as 15 % (m/m).</p>
220
- </aside>
221
- <aside id="ftn3">
222
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Hello! denoted as 15 % (m/m).</p>
223
- </aside>
224
- </div>
225
- </body>
226
- </html>
227
- INPUT
228
- <?xml version="1.0"?>
229
- <html xmlns:epub="http://www.idpf.org/2007/ops" lang="en">
230
- <head/>
231
- <body lang="EN-US" link="blue" vlink="#954F72">
232
- <div class="WordSection1">
233
- <p>&#xA0;</p>
234
- </div>
235
- <p><br clear="all" class="section"/></p>
236
- <div class="WordSection2">
237
- <p><br clear="all" style="mso-special-character:line-break;page-break-before:always"/></p>
238
- <div>
239
- <h1 class="ForewordTitle">Foreword</h1>
240
- <p>A.<a href="#ftn1" epub:type="footnote"><sup>1</sup></a></p>
241
- <p>B.<a href="#ftn2" epub:type="footnote"><sup>2</sup></a></p>
242
- <p>C.<a href="#ftn3" epub:type="footnote"><sup>3</sup></a></p>
243
- </div>
244
- <p>&#xA0;</p>
245
- </div>
246
- <p><br clear="all" class="section"/></p>
247
- <div class="WordSection3">
248
- <p class="zzSTDTitle1"/>
249
- <aside id="ftn1">
250
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Formerly denoted as 15 % (m/m).</p>
251
- </aside>
252
- <aside id="ftn2">
253
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Formerly denoted as 15 % (m/m).</p>
254
- </aside>
255
- <aside id="ftn3">
256
- <p id="_1e228e29-baef-4f38-b048-b05a051747e4">Hello! denoted as 15 % (m/m).</p>
257
- </aside>
258
- </div>
259
- </body>
260
- </html>
261
- OUTPUT
262
- end
263
-
264
- it "cleans up tables with tfoot" do
265
- expect(xmlpp(IsoDoc::HtmlConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
266
- <html xmlns:epub="http://www.idpf.org/2007/ops">
267
- <head>
268
- <title>test</title>
269
- <body lang="EN-US" link="blue" vlink="#954F72">
270
- <div class="WordSection1">
271
- <p>&#160;</p>
272
- </div>
273
- <br clear="all" class="section"/>
274
- <div class="WordSection2">
275
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
276
- <div>
277
- <h1 class="ForewordTitle">Foreword</h1>
278
- <p class="TableTitle" align="center">
279
- <b>Table 1&#160;&#8212; Repeatability and reproducibility of husked rice yield</b>
280
- </p>
281
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
282
- <thead>
283
- <tr>
284
- <td rowspan="2" align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
285
- <td colspan="4" align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
286
- </tr>
287
- <tr>
288
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Arborio</td>
289
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Drago<a href="#tableD-1a" class="TableFootnoteRef">a</a><aside><div id="ftntableD-1a"><span><span id="tableD-1a" class="TableFootnoteRef">a</span>&#160; </span>
290
- <p id="_0fe65e9a-5531-408e-8295-eeff35f41a55">Parboiled rice.</p>
291
- </div></aside></td>
292
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Balilla<a href="#tableD-1a" class="TableFootnoteRef">a</a></td>
293
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Thaibonnet</td>
294
- </tr>
295
- </thead>
296
- <tbody>
297
- <tr>
298
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Number of laboratories retained after eliminating outliers</td>
299
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
300
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">11</td>
301
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
302
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
303
- </tr>
304
- <tr>
305
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Mean value, g/100 g</td>
306
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,2</td>
307
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">82,0</td>
308
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,8</td>
309
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">77,7</td>
310
- </tr>
311
- </tbody>
312
- <tfoot>
313
- <tr>
314
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Reproducibility limit, <span class="stem">(#(R)#)</span> (= 2,83 <span class="stem">(#(s_R)#)</span>)</td>
315
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">2,89</td>
316
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">0,57</td>
317
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">2,26</td>
318
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">6,06</td>
319
- </tr>
320
- </tfoot>
321
- <dl>
322
- <dt>
323
- <p>Drago</p>
324
- </dt>
325
- <dd>A type of rice</dd>
326
- </dl>
327
- <div id="" class="Note">
328
- <p class="Note">NOTE<span style="mso-tab-count:1">&#160; </span>This is a table about rice</p>
329
- </div>
330
- </table>
331
- </div>
332
- <p>&#160;</p>
333
- </div>
334
- <br clear="all" class="section"/>
335
- <div class="WordSection3">
336
- <p class="zzSTDTitle1"/>
337
- </div>
338
- </body>
339
- </head>
340
- </html>
341
- INPUT
342
- <?xml version="1.0"?>
343
- <html xmlns:epub="http://www.idpf.org/2007/ops">
344
- <head>
345
- <title>test</title>
346
- <body lang="EN-US" link="blue" vlink="#954F72">
347
- <div class="WordSection1">
348
- <p>&#xA0;</p>
349
- </div>
350
- <br clear="all" class="section"/>
351
- <div class="WordSection2">
352
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
353
- <div>
354
- <h1 class="ForewordTitle">Foreword</h1>
355
- <p class="TableTitle" align="center">
356
- <b>Table 1&#xA0;&#x2014; Repeatability and reproducibility of husked rice yield</b>
357
- </p>
358
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
359
- <thead>
360
- <tr>
361
- <td rowspan="2" align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
362
- <td colspan="4" align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
363
- </tr>
364
- <tr>
365
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Arborio</td>
366
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Drago<a href="#tableD-1a" class="TableFootnoteRef">a</a></td>
367
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Balilla<a href="#tableD-1a" class="TableFootnoteRef">a</a></td>
368
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Thaibonnet</td>
369
- </tr>
370
- </thead>
371
- <tbody>
372
- <tr>
373
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Number of laboratories retained after eliminating outliers</td>
374
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
375
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">11</td>
376
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
377
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
378
- </tr>
379
- <tr>
380
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Mean value, g/100 g</td>
381
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,2</td>
382
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">82,0</td>
383
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,8</td>
384
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">77,7</td>
385
- </tr>
386
- </tbody>
387
- <tfoot>
388
- <tr>
389
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">Reproducibility limit, <span class="stem">(#(R)#)</span> (= 2,83 <span class="stem">(#(s_R)#)</span>)</td>
390
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">2,89</td>
391
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">0,57</td>
392
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">2,26</td>
393
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">6,06</td>
394
- </tr>
395
- <tr><td colspan="5" style="border-top:0pt;border-bottom:solid windowtext 1.5pt;"><div id="" class="Note">
396
- <p class="Note">NOTE<span style="mso-tab-count:1">&#xA0; </span>This is a table about rice</p>
397
- </div><div class="TableFootnote"><div id="ftntableD-1a">
398
- <p id="_0fe65e9a-5531-408e-8295-eeff35f41a55" class="TableFootnote"><span><span id="tableD-1a" class="TableFootnoteRef">a</span>&#xA0; </span>Parboiled rice.</p>
399
- </div></div></td></tr></tfoot>
400
- <dl>
401
- <dt>
402
- <p>Drago</p>
403
- </dt>
404
- <dd>A type of rice</dd>
405
- </dl>
406
-
407
- </table>
408
- </div>
409
- <p>&#xA0;</p>
410
- </div>
411
- <br clear="all" class="section"/>
412
- <div class="WordSection3">
413
- <p class="zzSTDTitle1"/>
414
- </div>
415
- </body>
416
- </head>
417
- </html>
418
- OUTPUT
419
- end
420
-
421
- it "cleans up tables with tfoot (Word)" do
422
- expect(xmlpp(IsoDoc::WordConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
423
- <html xmlns:epub="http://www.idpf.org/2007/ops">
424
- <head>
425
- <title>test</title>
426
- <body lang="EN-US" link="blue" vlink="#954F72">
427
- <div class="WordSection1">
428
- <p>&#160;</p>
429
- </div>
430
- <br clear="all" class="section"/>
431
- <div class="WordSection2">
432
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
433
- <div>
434
- <h1 class="ForewordTitle">Foreword</h1>
435
- <p class="TableTitle" align="center">
436
- <b>Table 1&#160;&#8212; Repeatability and reproducibility of husked rice yield</b>
437
- </p>
438
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
439
- <thead>
440
- <tr>
441
- <td rowspan="2" align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
442
- <td colspan="4" align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
443
- </tr>
444
- <tr>
445
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Arborio</td>
446
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Drago<a href="#tableD-1a" class="TableFootnoteRef">a</a><aside><div id="ftntableD-1a"><span><span id="tableD-1a" class="TableFootnoteRef">a</span><span style="mso-tab-count:1">&#160; </span></span>
447
- <p id="_0fe65e9a-5531-408e-8295-eeff35f41a55">Parboiled rice.</p>
448
- </div></aside></td>
449
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Balilla<a href="#tableD-1a" class="TableFootnoteRef">a</a></td>
450
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Thaibonnet</td>
451
- </tr>
452
- </thead>
453
- <tbody>
454
- <tr>
455
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Number of laboratories retained after eliminating outliers</td>
456
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
457
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">11</td>
458
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
459
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
460
- </tr>
461
- <tr>
462
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Mean value, g/100 g</td>
463
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,2</td>
464
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">82,0</td>
465
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,8</td>
466
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">77,7</td>
467
- </tr>
468
- </tbody>
469
- <tfoot>
470
- <tr>
471
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Reproducibility limit, <span class="stem">(#(R)#)</span> (= 2,83 <span class="stem">(#(s_R)#)</span>)</td>
472
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">2,89</td>
473
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">0,57</td>
474
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">2,26</td>
475
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">6,06</td>
476
- </tr>
477
- </tfoot>
478
- <dl>
479
- <dt>
480
- <p>Drago</p>
481
- </dt>
482
- <dd>A type of rice</dd>
483
- </dl>
484
- <div id="" class="Note">
485
- <p class="Note">NOTE<span style="mso-tab-count:1">&#160; </span>This is a table about rice</p>
486
- </div>
487
- </table>
488
- </div>
489
- <p>&#160;</p>
490
- </div>
491
- <br clear="all" class="section"/>
492
- <div class="WordSection3">
493
- <p class="zzSTDTitle1"/>
494
- </div>
495
- </body>
496
- </head>
497
- </html>
498
- INPUT
499
- <?xml version="1.0"?>
500
- <html xmlns:epub="http://www.idpf.org/2007/ops">
501
- <head>
502
- <title>test</title>
503
- <body lang="EN-US" link="blue" vlink="#954F72">
504
- <div class="WordSection1">
505
- <p>&#xA0;</p>
506
- </div>
507
- <br clear="all" class="section"/>
508
- <div class="WordSection2">
509
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
510
- <div>
511
- <h1 class="ForewordTitle">Foreword</h1>
512
- <p class="TableTitle" align="center">
513
- <b>Table 1&#xA0;&#x2014; Repeatability and reproducibility of husked rice yield</b>
514
- </p>
515
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
516
- <thead>
517
- <tr>
518
- <td rowspan="2" align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
519
- <td colspan="4" align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
520
- </tr>
521
- <tr>
522
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Arborio</td>
523
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Drago<a href="#tableD-1a" class="TableFootnoteRef">a</a></td>
524
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Balilla<a href="#tableD-1a" class="TableFootnoteRef">a</a></td>
525
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Thaibonnet</td>
526
- </tr>
527
- </thead>
528
- <tbody>
529
- <tr>
530
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Number of laboratories retained after eliminating outliers</td>
531
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
532
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">11</td>
533
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
534
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
535
- </tr>
536
- <tr>
537
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Mean value, g/100 g</td>
538
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,2</td>
539
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">82,0</td>
540
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,8</td>
541
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">77,7</td>
542
- </tr>
543
- </tbody>
544
- <tfoot>
545
- <tr>
546
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">Reproducibility limit, <span class="stem">(#(R)#)</span> (= 2,83 <span class="stem">(#(s_R)#)</span>)</td>
547
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">2,89</td>
548
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">0,57</td>
549
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">2,26</td>
550
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:0pt;">6,06</td>
551
- </tr>
552
- <tr><td colspan="5" style="border-top:0pt;mso-border-top-alt:0pt;border-bottom:solid windowtext 1.5pt;mso-border-bottom-alt:solid windowtext 1.5pt;"><div id="" class="Note">
553
- <p class="Note">NOTE<span style="mso-tab-count:1">&#xA0; </span>This is a table about rice</p>
554
- </div><div class="TableFootnote"><div id="ftntableD-1a">
555
- <p id="_0fe65e9a-5531-408e-8295-eeff35f41a55" class="TableFootnote"><span><span id="tableD-1a" class="TableFootnoteRef">a</span><span style="mso-tab-count:1">&#xA0; </span></span>Parboiled rice.</p>
556
- </div></div></td></tr></tfoot>
557
- <dl>
558
- <dt>
559
- <p>Drago</p>
560
- </dt>
561
- <dd>A type of rice</dd>
562
- </dl>
563
-
564
- </table>
565
- </div>
566
- <p>&#xA0;</p>
567
- </div>
568
- <br clear="all" class="section"/>
569
- <div class="WordSection3">
570
- <p class="zzSTDTitle1"/>
571
- </div>
572
- </body>
573
- </head>
574
- </html>
575
- OUTPUT
576
- end
577
-
578
- it "cleans up tables without tfoot" do
579
- expect(xmlpp(IsoDoc::HtmlConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
580
- <html xmlns:epub="http://www.idpf.org/2007/ops">
581
- <head>
582
- <title>test</title>
583
- <body lang="EN-US" link="blue" vlink="#954F72">
584
- <div class="WordSection1">
585
- <p>&#160;</p>
586
- </div>
587
- <br clear="all" class="section"/>
588
- <div class="WordSection2">
589
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
590
- <div>
591
- <h1 class="ForewordTitle">Foreword</h1>
592
- <p class="TableTitle" align="center">
593
- <b>Table 1&#160;&#8212; Repeatability and reproducibility of husked rice yield</b>
594
- </p>
595
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
596
- <thead>
597
- <tr>
598
- <td rowspan="2" align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
599
- <td colspan="4" align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
600
- </tr>
601
- <tr>
602
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Arborio</td>
603
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Drago<a href="#tableD-1a" class="TableFootnoteRef">a</a><aside><div id="ftntableD-1a"><span><span id="tableD-1a" class="TableFootnoteRef">a</span>&#160; </span>
604
- <p id="_0fe65e9a-5531-408e-8295-eeff35f41a55">Parboiled rice.</p>
605
- </div></aside></td>
606
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Balilla<a href="#tableD-1a" class="TableFootnoteRef">a</a></td>
607
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Thaibonnet</td>
608
- </tr>
609
- </thead>
610
- <tbody>
611
- <tr>
612
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Number of laboratories retained after eliminating outliers</td>
613
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
614
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">11</td>
615
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
616
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
617
- </tr>
618
- <tr>
619
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Mean value, g/100 g</td>
620
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,2</td>
621
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">82,0</td>
622
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,8</td>
623
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">77,7</td>
624
- </tr>
625
- </tbody>
626
- <dl>
627
- <dt>
628
- <p>Drago</p>
629
- </dt>
630
- <dd>A type of rice</dd>
631
- </dl>
632
- <div id="" class="Note">
633
- <p class="Note">NOTE<span style="mso-tab-count:1">&#160; </span>This is a table about rice</p>
634
- </div>
635
- </table>
636
- </div>
637
- <p>&#160;</p>
638
- </div>
639
- <br clear="all" class="section"/>
640
- <div class="WordSection3">
641
- <p class="zzSTDTitle1"/>
642
- </div>
643
- </body>
644
- </head>
645
- </html>
646
- INPUT
647
- <?xml version="1.0"?>
648
- <html xmlns:epub="http://www.idpf.org/2007/ops">
649
- <head>
650
- <title>test</title>
651
- <body lang="EN-US" link="blue" vlink="#954F72">
652
- <div class="WordSection1">
653
- <p>&#xA0;</p>
654
- </div>
655
- <br clear="all" class="section"/>
656
- <div class="WordSection2">
657
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
658
- <div>
659
- <h1 class="ForewordTitle">Foreword</h1>
660
- <p class="TableTitle" align="center">
661
- <b>Table 1&#xA0;&#x2014; Repeatability and reproducibility of husked rice yield</b>
662
- </p>
663
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
664
- <thead>
665
- <tr>
666
- <td rowspan="2" align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
667
- <td colspan="4" align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
668
- </tr>
669
- <tr>
670
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Arborio</td>
671
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Drago<a href="#tableD-1a" class="TableFootnoteRef">a</a></td>
672
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Balilla<a href="#tableD-1a" class="TableFootnoteRef">a</a></td>
673
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Thaibonnet</td>
674
- </tr>
675
- </thead>
676
- <tbody>
677
- <tr>
678
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Number of laboratories retained after eliminating outliers</td>
679
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
680
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">11</td>
681
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
682
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">13</td>
683
- </tr>
684
- <tr>
685
- <td align="left" style="border-top:none;border-bottom:solid windowtext 1.5pt;">Mean value, g/100 g</td>
686
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,2</td>
687
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">82,0</td>
688
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">81,8</td>
689
- <td align="center" style="border-top:none;border-bottom:solid windowtext 1.5pt;">77,7</td>
690
- </tr>
691
- </tbody>
692
- <dl>
693
- <dt>
694
- <p>Drago</p>
695
- </dt>
696
- <dd>A type of rice</dd>
697
- </dl>
698
-
699
- <tfoot><tr><td colspan="5" style="border-top:0pt;border-bottom:solid windowtext 1.5pt;"><div id="" class="Note">
700
- <p class="Note">NOTE<span style="mso-tab-count:1">&#xA0; </span>This is a table about rice</p>
701
- </div><div class="TableFootnote"><div id="ftntableD-1a">
702
- <p id="_0fe65e9a-5531-408e-8295-eeff35f41a55" class="TableFootnote"><span><span id="tableD-1a" class="TableFootnoteRef">a</span>&#xA0; </span>Parboiled rice.</p>
703
- </div></div></td></tr></tfoot></table>
704
- </div>
705
- <p>&#xA0;</p>
706
- </div>
707
- <br clear="all" class="section"/>
708
- <div class="WordSection3">
709
- <p class="zzSTDTitle1"/>
710
- </div>
711
- </body>
712
- </head>
713
- </html>
714
- OUTPUT
715
- end
716
-
717
- it "does not break up very long strings in tables by default" do
718
- expect(xmlpp(IsoDoc::HtmlConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
719
- <html xmlns:epub="http://www.idpf.org/2007/ops">
720
- <head>
721
- <title>test</title>
722
- <body lang="EN-US" link="blue" vlink="#954F72">
723
- <div class="WordSection1">
724
- <p>&#160;</p>
725
- </div>
726
- <br clear="all" class="section"/>
727
- <div class="WordSection2">
728
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
729
- <div>
730
- <h1 class="ForewordTitle">Foreword</h1>
731
- <p class="TableTitle" align="center">
732
- <b>Table 1&#160;&#8212; Repeatability and reproducibility of husked rice yield</b>
733
- </p>
734
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
735
- <thead>
736
- <tr>
737
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
738
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
739
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
740
- </tr>
741
- </thead>
742
- <tbody>
743
- <tr>
744
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/BBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
745
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
746
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
747
- </tr>
748
- </tbody>
749
- </table>
750
- </div>
751
- </div>
752
- </body>
753
- </html>
754
- INPUT
755
- <?xml version='1.0'?>
756
- <html xmlns:epub='http://www.idpf.org/2007/ops'>
757
- <head>
758
- <title>test</title>
759
- <body lang='EN-US' link='blue' vlink='#954F72'>
760
- <div class='WordSection1'>
761
- <p>&#xA0;</p>
762
- </div>
763
- <br clear='all' class='section'/>
764
- <div class='WordSection2'>
765
- <br clear='all' style='mso-special-character:line-break;page-break-before:always'/>
766
- <div>
767
- <h1 class='ForewordTitle'>Foreword</h1>
768
- <p class='TableTitle' align='center'>
769
- <b>Table 1&#xA0;&#x2014; Repeatability and reproducibility of husked rice yield</b>
770
- </p>
771
- <table id='tableD-1' class='MsoISOTable' border='1' cellspacing='0' cellpadding='0'>
772
- <thead>
773
- <tr>
774
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>Description</td>
775
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>Description</td>
776
- <td align='center' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;'>Rice sample</td>
777
- </tr>
778
- </thead>
779
- <tbody>
780
- <tr>
781
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
782
- http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/BBBBBBBBBBBBBBBBBBBBBBBBBBBB
783
- </td>
784
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
785
- http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB </td>
786
- <td align='center' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;'>
787
- www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB
788
- </td>
789
- </tr>
790
- </tbody>
791
- </table>
792
- </div>
793
- </div>
794
- </body>
795
- </head>
796
- </html>
797
- OUTPUT
798
- end
799
-
800
- it "does not break up very long strings in tables on request in HTML" do
801
- expect(xmlpp(IsoDoc::HtmlConvert.new({ break_up_urls_in_tables: "true" }).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
802
- <html xmlns:epub="http://www.idpf.org/2007/ops">
803
- <head>
804
- <title>test</title>
805
- <body lang="EN-US" link="blue" vlink="#954F72">
806
- <div class="WordSection1">
807
- <p>&#160;</p>
808
- </div>
809
- <br clear="all" class="section"/>
810
- <div class="WordSection2">
811
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
812
- <div>
813
- <h1 class="ForewordTitle">Foreword</h1>
814
- <p class="TableTitle" align="center">
815
- <b>Table 1&#160;&#8212; Repeatability and reproducibility of husked rice yield</b>
816
- </p>
817
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
818
- <thead>
819
- <tr>
820
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
821
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
822
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
823
- </tr>
824
- </thead>
825
- <tbody>
826
- <tr>
827
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/BBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
828
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
829
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
830
- </tr>
831
- </tbody>
832
- </table>
833
- </div>
834
- </div>
835
- </body>
836
- </html>
837
- INPUT
838
- <?xml version='1.0'?>
839
- <html xmlns:epub='http://www.idpf.org/2007/ops'>
840
- <head>
841
- <title>test</title>
842
- <body lang='EN-US' link='blue' vlink='#954F72'>
843
- <div class='WordSection1'>
844
- <p>&#xA0;</p>
845
- </div>
846
- <br clear='all' class='section'/>
847
- <div class='WordSection2'>
848
- <br clear='all' style='mso-special-character:line-break;page-break-before:always'/>
849
- <div>
850
- <h1 class='ForewordTitle'>Foreword</h1>
851
- <p class='TableTitle' align='center'>
852
- <b>Table 1&#xA0;&#x2014; Repeatability and reproducibility of husked rice yield</b>
853
- </p>
854
- <table id='tableD-1' class='MsoISOTable' border='1' cellspacing='0' cellpadding='0'>
855
- <thead>
856
- <tr>
857
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>Description</td>
858
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>Description</td>
859
- <td align='center' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;'>Rice sample</td>
860
- </tr>
861
- </thead>
862
- <tbody>
863
- <tr>
864
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
865
- http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/BBBBBBBBBBBBBBBBBBBBBBBBBBBB
866
- </td>
867
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
868
- http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
869
- <td align='center' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;'>
870
- www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB
871
- </td>
872
- </tr>
873
- </tbody>
874
- </table>
875
- </div>
876
- </div>
877
- </body>
878
- </head>
879
- </html>
880
- OUTPUT
881
- end
882
-
883
- it "does not break up very long strings in tables by default (Word)" do
884
- expect(xmlpp(IsoDoc::WordConvert.new({}).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
885
- <html xmlns:epub="http://www.idpf.org/2007/ops">
886
- <head>
887
- <title>test</title>
888
- <body lang="EN-US" link="blue" vlink="#954F72">
889
- <div class="WordSection1">
890
- <p>&#160;</p>
891
- </div>
892
- <br clear="all" class="section"/>
893
- <div class="WordSection2">
894
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
895
- <div>
896
- <h1 class="ForewordTitle">Foreword</h1>
897
- <p class="TableTitle" align="center">
898
- <b>Table 1&#160;&#8212; Repeatability and reproducibility of husked rice yield</b>
899
- </p>
900
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
901
- <thead>
902
- <tr>
903
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
904
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
905
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
906
- </tr>
907
- </thead>
908
- <tbody>
909
- <tr>
910
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
911
- http://www.example.com/&amp;AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/BBBBBBBBBBBBBBBBBBBBBBBBBBBB
912
- </td>
913
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
914
- http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB
915
- </td>
916
- <td align='center' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;'>
917
- www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB
918
- </td>
919
- </tr>
920
- </tbody>
921
- </table>
922
- </div>
923
- </div>
924
- </body>
925
- </html>
926
- INPUT
927
- <?xml version='1.0'?>
928
- <html xmlns:epub='http://www.idpf.org/2007/ops'>
929
- <head>
930
- <title>test</title>
931
- <body lang='EN-US' link='blue' vlink='#954F72'>
932
- <div class='WordSection1'>
933
- <p>&#xA0;</p>
934
- </div>
935
- <br clear='all' class='section'/>
936
- <div class='WordSection2'>
937
- <br clear='all' style='mso-special-character:line-break;page-break-before:always'/>
938
- <div>
939
- <h1 class='ForewordTitle'>Foreword</h1>
940
- <p class='TableTitle' align='center'>
941
- <b>Table 1&#xA0;&#x2014; Repeatability and reproducibility of husked rice yield</b>
942
- </p>
943
- <table id='tableD-1' class='MsoISOTable' border='1' cellspacing='0' cellpadding='0'>
944
- <thead>
945
- <tr>
946
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>Description</td>
947
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>Description</td>
948
- <td align='center' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;'>Rice sample</td>
949
- </tr>
950
- </thead>
951
- <tbody>
952
- <tr>
953
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
954
- http://www.example.com/&amp;AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/BBBBBBBBBBBBBBBBBBBBBBBBBBBB
955
- </td>
956
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
957
- http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB
958
- </td>
959
- <td align='center' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;'>
960
- www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB
961
- </td>
962
- </tr>
963
- </tbody>
964
- </table>
965
- </div>
966
- </div>
967
- </body>
968
- </head>
969
- </html>
970
- OUTPUT
971
- end
972
-
973
- it "breaks up very long strings in tables on request (Word)" do
974
- expect(xmlpp(IsoDoc::WordConvert.new({ break_up_urls_in_tables: "true" }).cleanup(Nokogiri::XML(<<~"INPUT")).to_s)).to be_equivalent_to xmlpp(<<~"OUTPUT")
975
- <html xmlns:epub="http://www.idpf.org/2007/ops">
976
- <head>
977
- <title>test</title>
978
- <body lang="EN-US" link="blue" vlink="#954F72">
979
- <div class="WordSection1">
980
- <p>&#160;</p>
981
- </div>
982
- <br clear="all" class="section"/>
983
- <div class="WordSection2">
984
- <br clear="all" style="mso-special-character:line-break;page-break-before:always"/>
985
- <div>
986
- <h1 class="ForewordTitle">Foreword</h1>
987
- <p class="TableTitle" align="center">
988
- <b>Table 1&#160;&#8212; Repeatability and reproducibility of husked rice yield</b>
989
- </p>
990
- <table id="tableD-1" class="MsoISOTable" border="1" cellspacing="0" cellpadding="0">
991
- <thead>
992
- <tr>
993
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
994
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">Description</td>
995
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">Rice sample</td>
996
- </tr>
997
- </thead>
998
- <tbody>
999
- <tr>
1000
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/BBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
1001
- <td align="left" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;">http://www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
1002
- <td align="center" style="border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;">www.example.com/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB</td>
1003
- </tr>
1004
- </tbody>
1005
- </table>
1006
- </div>
1007
- </div>
1008
- </body>
1009
- </html>
1010
- INPUT
1011
- <?xml version='1.0'?>
1012
- <html xmlns:epub='http://www.idpf.org/2007/ops'>
1013
- <head>
1014
- <title>test</title>
1015
- <body lang='EN-US' link='blue' vlink='#954F72'>
1016
- <div class='WordSection1'>
1017
- <p>&#xA0;</p>
1018
- </div>
1019
- <br clear='all' class='section'/>
1020
- <div class='WordSection2'>
1021
- <br clear='all' style='mso-special-character:line-break;page-break-before:always'/>
1022
- <div>
1023
- <h1 class='ForewordTitle'>Foreword</h1>
1024
- <p class='TableTitle' align='center'>
1025
- <b>Table 1&#xA0;&#x2014; Repeatability and reproducibility of husked rice yield</b>
1026
- </p>
1027
- <table id='tableD-1' class='MsoISOTable' border='1' cellspacing='0' cellpadding='0'>
1028
- <thead>
1029
- <tr>
1030
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>Description</td>
1031
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>Description</td>
1032
- <td align='center' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;'>Rice sample</td>
1033
- </tr>
1034
- </thead>
1035
- <tbody>
1036
- <tr>
1037
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
1038
- http://www.example.com/ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAA/ BBBBBBBBBBBBBBBBBBBBBBBBBBBB
1039
- </td>
1040
- <td align='left' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.5pt;'>
1041
- http://www.example.com/ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAABBBBBBBBBBBBBBBBBBBBBB BBBBBB
1042
- </td>
1043
- <td align='center' style='border-top:solid windowtext 1.5pt;border-bottom:solid windowtext 1.0pt;'>
1044
- www.example.com/ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ABBBBBBBBBBBBBBBBBBBBBBBBBBBB
1045
- </td>
1046
- </tr>
1047
- </tbody>
1048
- </table>
1049
- </div>
1050
- </div>
1051
- </body>
1052
- </head>
1053
- </html>
1054
- OUTPUT
1055
- end
1056
- end