write_xlsx 1.09.4 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2058) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +109 -0
  3. data/.rubocop_todo.yml +445 -0
  4. data/Changes +8 -0
  5. data/Gemfile +2 -0
  6. data/LICENSE.txt +1 -1
  7. data/Rakefile +14 -8
  8. data/examples/array_formula.rb +2 -2
  9. data/examples/autofilter.rb +50 -26
  10. data/examples/chart_area.rb +10 -10
  11. data/examples/chart_bar.rb +10 -10
  12. data/examples/chart_column.rb +10 -10
  13. data/examples/chart_combined.rb +2 -3
  14. data/examples/chart_data_labels.rb +23 -35
  15. data/examples/chart_data_table.rb +16 -16
  16. data/examples/chart_data_tools.rb +36 -42
  17. data/examples/chart_doughnut.rb +21 -25
  18. data/examples/chart_gauge.rb +17 -17
  19. data/examples/chart_line.rb +25 -26
  20. data/examples/chart_pareto.rb +3 -3
  21. data/examples/chart_pie.rb +15 -15
  22. data/examples/chart_radar.rb +30 -30
  23. data/examples/chart_scatter.rb +10 -10
  24. data/examples/chart_secondary_axis.rb +9 -9
  25. data/examples/chart_stock.rb +10 -11
  26. data/examples/chart_styles.rb +6 -7
  27. data/examples/colors.rb +26 -29
  28. data/examples/comments1.rb +1 -0
  29. data/examples/comments2.rb +85 -114
  30. data/examples/conditional_format.rb +159 -150
  31. data/examples/data_validate.rb +135 -122
  32. data/examples/date_time.rb +29 -29
  33. data/examples/defined_name.rb +5 -5
  34. data/examples/demo.rb +10 -12
  35. data/examples/diag_border.rb +4 -5
  36. data/examples/dynamic_arrays.rb +247 -0
  37. data/examples/formats.rb +93 -105
  38. data/examples/headers.rb +2 -7
  39. data/examples/hyperlink1.rb +5 -6
  40. data/examples/ignore_errors.rb +1 -1
  41. data/examples/lambda.rb +43 -0
  42. data/examples/macros.rb +6 -6
  43. data/examples/merge1.rb +0 -3
  44. data/examples/merge2.rb +9 -12
  45. data/examples/merge3.rb +6 -7
  46. data/examples/merge4.rb +2 -4
  47. data/examples/merge5.rb +6 -6
  48. data/examples/merge6.rb +1 -1
  49. data/examples/outline.rb +8 -16
  50. data/examples/outline_collapsed.rb +6 -6
  51. data/examples/panes.rb +15 -15
  52. data/examples/properties.rb +9 -9
  53. data/examples/rich_strings.rb +19 -11
  54. data/examples/shape1.rb +9 -9
  55. data/examples/shape2.rb +19 -19
  56. data/examples/shape3.rb +6 -6
  57. data/examples/shape4.rb +9 -9
  58. data/examples/shape5.rb +8 -8
  59. data/examples/shape6.rb +8 -8
  60. data/examples/shape7.rb +14 -14
  61. data/examples/shape8.rb +14 -14
  62. data/examples/shape_all.rb +6 -6
  63. data/examples/sparklines1.rb +23 -24
  64. data/examples/sparklines2.rb +151 -151
  65. data/examples/tables.rb +86 -94
  66. data/examples/update_range_format_with_params.rb +4 -4
  67. data/examples/watermark.png +0 -0
  68. data/examples/watermark.rb +26 -0
  69. data/lib/write_xlsx/chart/area.rb +8 -9
  70. data/lib/write_xlsx/chart/axis.rb +12 -24
  71. data/lib/write_xlsx/chart/bar.rb +4 -8
  72. data/lib/write_xlsx/chart/column.rb +3 -4
  73. data/lib/write_xlsx/chart/doughnut.rb +3 -2
  74. data/lib/write_xlsx/chart/line.rb +16 -17
  75. data/lib/write_xlsx/chart/pie.rb +13 -13
  76. data/lib/write_xlsx/chart/radar.rb +8 -9
  77. data/lib/write_xlsx/chart/scatter.rb +20 -23
  78. data/lib/write_xlsx/chart/series.rb +32 -45
  79. data/lib/write_xlsx/chart/stock.rb +29 -24
  80. data/lib/write_xlsx/chart.rb +184 -217
  81. data/lib/write_xlsx/chartsheet.rb +23 -31
  82. data/lib/write_xlsx/col_name.rb +3 -1
  83. data/lib/write_xlsx/colors.rb +2 -1
  84. data/lib/write_xlsx/compatibility.rb +15 -15
  85. data/lib/write_xlsx/drawing.rb +72 -63
  86. data/lib/write_xlsx/format.rb +57 -59
  87. data/lib/write_xlsx/formats.rb +2 -0
  88. data/lib/write_xlsx/gradient.rb +7 -9
  89. data/lib/write_xlsx/package/app.rb +13 -16
  90. data/lib/write_xlsx/package/button.rb +9 -5
  91. data/lib/write_xlsx/package/comments.rb +34 -37
  92. data/lib/write_xlsx/package/conditional_format.rb +91 -110
  93. data/lib/write_xlsx/package/content_types.rb +21 -21
  94. data/lib/write_xlsx/package/core.rb +6 -4
  95. data/lib/write_xlsx/package/custom.rb +8 -7
  96. data/lib/write_xlsx/package/metadata.rb +7 -5
  97. data/lib/write_xlsx/package/packager.rb +37 -22
  98. data/lib/write_xlsx/package/relationships.rb +2 -1
  99. data/lib/write_xlsx/package/shared_strings.rb +12 -12
  100. data/lib/write_xlsx/package/styles.rb +55 -68
  101. data/lib/write_xlsx/package/table.rb +78 -95
  102. data/lib/write_xlsx/package/theme.rb +4 -3
  103. data/lib/write_xlsx/package/vml.rb +25 -31
  104. data/lib/write_xlsx/package/xml_writer_simple.rb +40 -22
  105. data/lib/write_xlsx/shape.rb +21 -31
  106. data/lib/write_xlsx/sheets.rb +38 -46
  107. data/lib/write_xlsx/sparkline.rb +12 -20
  108. data/lib/write_xlsx/utility.rb +131 -145
  109. data/lib/write_xlsx/version.rb +3 -1
  110. data/lib/write_xlsx/workbook.rb +248 -299
  111. data/lib/write_xlsx/worksheet/cell_data.rb +78 -64
  112. data/lib/write_xlsx/worksheet/data_validation.rb +66 -73
  113. data/lib/write_xlsx/worksheet/hyperlink.rb +12 -17
  114. data/lib/write_xlsx/worksheet/page_setup.rb +10 -11
  115. data/lib/write_xlsx/worksheet.rb +688 -580
  116. data/lib/write_xlsx/zip_file_utils.rb +31 -32
  117. data/lib/write_xlsx.rb +2 -3
  118. data/write_xlsx.gemspec +24 -18
  119. metadata +56 -3883
  120. data/.gitattributes +0 -1
  121. data/.gitignore +0 -45
  122. data/.travis.yml +0 -75
  123. data/bin/extract_vba.rb +0 -34
  124. data/test/chart/test_add_series.rb +0 -190
  125. data/test/chart/test_process_names.rb +0 -27
  126. data/test/chart/test_write_a_latin.rb +0 -22
  127. data/test/chart/test_write_auto.rb +0 -15
  128. data/test/chart/test_write_ax_id.rb +0 -15
  129. data/test/chart/test_write_ax_pos.rb +0 -15
  130. data/test/chart/test_write_cross_ax.rb +0 -15
  131. data/test/chart/test_write_crosses.rb +0 -15
  132. data/test/chart/test_write_d_lbls.rb +0 -292
  133. data/test/chart/test_write_format_code.rb +0 -16
  134. data/test/chart/test_write_idx.rb +0 -15
  135. data/test/chart/test_write_label_align.rb +0 -15
  136. data/test/chart/test_write_label_offset.rb +0 -15
  137. data/test/chart/test_write_lang.rb +0 -15
  138. data/test/chart/test_write_layout.rb +0 -15
  139. data/test/chart/test_write_legend.rb +0 -16
  140. data/test/chart/test_write_legend_pos.rb +0 -23
  141. data/test/chart/test_write_major_gridlines.rb +0 -15
  142. data/test/chart/test_write_marker.rb +0 -17
  143. data/test/chart/test_write_marker_size.rb +0 -15
  144. data/test/chart/test_write_marker_value.rb +0 -16
  145. data/test/chart/test_write_num_cache.rb +0 -16
  146. data/test/chart/test_write_number_format.rb +0 -48
  147. data/test/chart/test_write_order.rb +0 -15
  148. data/test/chart/test_write_orientation.rb +0 -15
  149. data/test/chart/test_write_page_margins.rb +0 -15
  150. data/test/chart/test_write_page_setup.rb +0 -15
  151. data/test/chart/test_write_plot_vis_only.rb +0 -15
  152. data/test/chart/test_write_pt.rb +0 -16
  153. data/test/chart/test_write_pt_count.rb +0 -16
  154. data/test/chart/test_write_series_formula.rb +0 -16
  155. data/test/chart/test_write_style.rb +0 -41
  156. data/test/chart/test_write_symbol.rb +0 -16
  157. data/test/chart/test_write_tick_lbl_pos.rb +0 -16
  158. data/test/chart/test_write_v.rb +0 -16
  159. data/test/chartsheet/test_chartsheet01.rb +0 -31
  160. data/test/chartsheet/test_write_sheet_protection.rb +0 -91
  161. data/test/drawing/test_drawing_chart_01.rb +0 -54
  162. data/test/drawing/test_drawing_image_01.rb +0 -68
  163. data/test/drawing/test_drawing_shape_01.rb +0 -71
  164. data/test/drawing/test_drawing_shape_02.rb +0 -80
  165. data/test/drawing/test_drawing_shape_03.rb +0 -41
  166. data/test/drawing/test_drawing_shape_04.rb +0 -105
  167. data/test/drawing/test_drawing_shape_05.rb +0 -48
  168. data/test/drawing/test_drawing_shape_06.rb +0 -47
  169. data/test/drawing/test_drawing_shape_07.rb +0 -52
  170. data/test/drawing/test_write_a_graphic_frame_locks.rb +0 -18
  171. data/test/drawing/test_write_c_chart.rb +0 -18
  172. data/test/drawing/test_write_c_nv_graphic_frame_pr.rb +0 -28
  173. data/test/drawing/test_write_c_nv_pr.rb +0 -18
  174. data/test/drawing/test_write_col.rb +0 -18
  175. data/test/drawing/test_write_col_off.rb +0 -18
  176. data/test/drawing/test_write_pos.rb +0 -18
  177. data/test/drawing/test_write_row.rb +0 -18
  178. data/test/drawing/test_write_row_off.rb +0 -18
  179. data/test/drawing/test_write_xdr_ext.rb +0 -18
  180. data/test/drawing/test_write_xfrm_extension.rb +0 -18
  181. data/test/drawing/test_write_xfrm_offset.rb +0 -18
  182. data/test/helper.rb +0 -206
  183. data/test/package/app/test_app01.rb +0 -44
  184. data/test/package/app/test_app02.rb +0 -46
  185. data/test/package/app/test_app03.rb +0 -53
  186. data/test/package/comments/test_comments_01.rb +0 -54
  187. data/test/package/comments/test_comments_02.rb +0 -54
  188. data/test/package/content_types/test_content_types.rb +0 -35
  189. data/test/package/content_types/test_write_default.rb +0 -13
  190. data/test/package/content_types/test_write_override.rb +0 -13
  191. data/test/package/core/test_core01.rb +0 -28
  192. data/test/package/core/test_core02.rb +0 -42
  193. data/test/package/relationships/test_relationships.rb +0 -28
  194. data/test/package/relationships/test_sheet_rels.rb +0 -22
  195. data/test/package/shared_strings/test_shared_strings01.rb +0 -30
  196. data/test/package/shared_strings/test_shared_strings02.rb +0 -30
  197. data/test/package/shared_strings/test_write_si.rb +0 -16
  198. data/test/package/styles/test_styles_01.rb +0 -60
  199. data/test/package/styles/test_styles_02.rb +0 -95
  200. data/test/package/styles/test_styles_03.rb +0 -81
  201. data/test/package/styles/test_styles_04.rb +0 -207
  202. data/test/package/styles/test_styles_05.rb +0 -141
  203. data/test/package/styles/test_styles_06.rb +0 -95
  204. data/test/package/styles/test_styles_07.rb +0 -95
  205. data/test/package/styles/test_styles_08.rb +0 -100
  206. data/test/package/styles/test_styles_09.rb +0 -86
  207. data/test/package/table/test_table01.rb +0 -42
  208. data/test/package/table/test_table02.rb +0 -44
  209. data/test/package/table/test_table03.rb +0 -48
  210. data/test/package/table/test_table04.rb +0 -46
  211. data/test/package/table/test_table05.rb +0 -46
  212. data/test/package/table/test_table06.rb +0 -52
  213. data/test/package/table/test_table07.rb +0 -47
  214. data/test/package/table/test_table08.rb +0 -53
  215. data/test/package/table/test_table09.rb +0 -65
  216. data/test/package/table/test_table10.rb +0 -45
  217. data/test/package/table/test_table11.rb +0 -60
  218. data/test/package/table/test_table12.rb +0 -60
  219. data/test/package/table/test_table13.rb +0 -69
  220. data/test/package/table/test_write_auto_filter.rb +0 -23
  221. data/test/package/table/test_write_table_column.rb +0 -22
  222. data/test/package/table/test_write_table_style_info.rb +0 -26
  223. data/test/package/vml/test_write_auto_fill.rb +0 -14
  224. data/test/package/vml/test_write_div.rb +0 -14
  225. data/test/package/vml/test_write_idmap.rb +0 -14
  226. data/test/package/vml/test_write_path.rb +0 -30
  227. data/test/package/vml/test_write_shapelayout.rb +0 -14
  228. data/test/package/vml/test_write_shapetype.rb +0 -22
  229. data/test/package/vml/test_write_stroke.rb +0 -14
  230. data/test/perl_output/a_simple.xlsx +0 -0
  231. data/test/perl_output/add_vba_project.xlsm +0 -0
  232. data/test/perl_output/array_formula.xlsx +0 -0
  233. data/test/perl_output/autofilter.xlsx +0 -0
  234. data/test/perl_output/background.xlsx +0 -0
  235. data/test/perl_output/chart_area.xlsx +0 -0
  236. data/test/perl_output/chart_bar.xlsx +0 -0
  237. data/test/perl_output/chart_column.xlsx +0 -0
  238. data/test/perl_output/chart_combined.xlsx +0 -0
  239. data/test/perl_output/chart_data_labels.xlsx +0 -0
  240. data/test/perl_output/chart_data_table.xlsx +0 -0
  241. data/test/perl_output/chart_data_tools.xlsx +0 -0
  242. data/test/perl_output/chart_doughnut.xlsx +0 -0
  243. data/test/perl_output/chart_gauge.xlsx +0 -0
  244. data/test/perl_output/chart_line.xlsx +0 -0
  245. data/test/perl_output/chart_pareto.xlsx +0 -0
  246. data/test/perl_output/chart_pie.xlsx +0 -0
  247. data/test/perl_output/chart_radar.xlsx +0 -0
  248. data/test/perl_output/chart_scatter.xlsx +0 -0
  249. data/test/perl_output/chart_scatter06.xlsx +0 -0
  250. data/test/perl_output/chart_secondary_axis.xlsx +0 -0
  251. data/test/perl_output/chart_stock.xlsx +0 -0
  252. data/test/perl_output/comments1.xlsx +0 -0
  253. data/test/perl_output/comments2.xlsx +0 -0
  254. data/test/perl_output/conditional_format.xlsx +0 -0
  255. data/test/perl_output/data_validate.xlsx +0 -0
  256. data/test/perl_output/date_time.xlsx +0 -0
  257. data/test/perl_output/defined_name.xlsx +0 -0
  258. data/test/perl_output/demo.xlsx +0 -0
  259. data/test/perl_output/diag_border.xlsx +0 -0
  260. data/test/perl_output/fit_to_pages.xlsx +0 -0
  261. data/test/perl_output/formats.xlsx +0 -0
  262. data/test/perl_output/headers.xlsx +0 -0
  263. data/test/perl_output/hide_first_sheet.xlsx +0 -0
  264. data/test/perl_output/hide_row_col.xlsx +0 -0
  265. data/test/perl_output/hide_sheet.xlsx +0 -0
  266. data/test/perl_output/hyperlink.xlsx +0 -0
  267. data/test/perl_output/ignore_errors.xlsx +0 -0
  268. data/test/perl_output/indent.xlsx +0 -0
  269. data/test/perl_output/keep_leading_zeros.xlsx +0 -0
  270. data/test/perl_output/merge1.xlsx +0 -0
  271. data/test/perl_output/merge2.xlsx +0 -0
  272. data/test/perl_output/merge3.xlsx +0 -0
  273. data/test/perl_output/merge4.xlsx +0 -0
  274. data/test/perl_output/merge5.xlsx +0 -0
  275. data/test/perl_output/merge6.xlsx +0 -0
  276. data/test/perl_output/multi_line.xlsx +0 -0
  277. data/test/perl_output/outline.xlsx +0 -0
  278. data/test/perl_output/outline_collapsed.xlsx +0 -0
  279. data/test/perl_output/panes.xlsx +0 -0
  280. data/test/perl_output/print_scale.xlsx +0 -0
  281. data/test/perl_output/properties.xlsx +0 -0
  282. data/test/perl_output/protection.xlsx +0 -0
  283. data/test/perl_output/regions.xlsx +0 -0
  284. data/test/perl_output/rich_strings.xlsx +0 -0
  285. data/test/perl_output/right_to_left.xlsx +0 -0
  286. data/test/perl_output/shape1.xlsx +0 -0
  287. data/test/perl_output/shape2.xlsx +0 -0
  288. data/test/perl_output/shape3.xlsx +0 -0
  289. data/test/perl_output/shape4.xlsx +0 -0
  290. data/test/perl_output/shape5.xlsx +0 -0
  291. data/test/perl_output/shape6.xlsx +0 -0
  292. data/test/perl_output/shape7.xlsx +0 -0
  293. data/test/perl_output/shape8.xlsx +0 -0
  294. data/test/perl_output/shape_all.xlsx +0 -0
  295. data/test/perl_output/sparklines1.xlsx +0 -0
  296. data/test/perl_output/sparklines2.xlsx +0 -0
  297. data/test/perl_output/stats.xlsx +0 -0
  298. data/test/perl_output/stats_ext.xlsx +0 -0
  299. data/test/perl_output/stocks.xlsx +0 -0
  300. data/test/perl_output/tab_colors.xlsx +0 -0
  301. data/test/perl_output/tables.xlsx +0 -0
  302. data/test/regression/_test_hyperlink31.rb +0 -26
  303. data/test/regression/disabled_test_vml04.rb +0 -41
  304. data/test/regression/images/black_150.jpg +0 -0
  305. data/test/regression/images/black_150.png +0 -0
  306. data/test/regression/images/black_150e.png +0 -0
  307. data/test/regression/images/black_300.jpg +0 -0
  308. data/test/regression/images/black_300.png +0 -0
  309. data/test/regression/images/black_300e.png +0 -0
  310. data/test/regression/images/black_72.jpg +0 -0
  311. data/test/regression/images/black_72.png +0 -0
  312. data/test/regression/images/black_72e.png +0 -0
  313. data/test/regression/images/black_96.jpg +0 -0
  314. data/test/regression/images/black_96.png +0 -0
  315. data/test/regression/images/blue.jpg +0 -0
  316. data/test/regression/images/blue.png +0 -0
  317. data/test/regression/images/grey.jpg +0 -0
  318. data/test/regression/images/grey.png +0 -0
  319. data/test/regression/images/happy.jpg +0 -0
  320. data/test/regression/images/issue32.png +0 -0
  321. data/test/regression/images/logo.gif +0 -0
  322. data/test/regression/images/logo.jpg +0 -0
  323. data/test/regression/images/logo.png +0 -0
  324. data/test/regression/images/mylogo.png +0 -0
  325. data/test/regression/images/red.bmp +0 -0
  326. data/test/regression/images/red.gif +0 -0
  327. data/test/regression/images/red.jpg +0 -0
  328. data/test/regression/images/red.png +0 -0
  329. data/test/regression/images/red2.png +0 -0
  330. data/test/regression/images/red_208.png +0 -0
  331. data/test/regression/images/red_64x20.png +0 -0
  332. data/test/regression/images/train.jpg +0 -0
  333. data/test/regression/images/yellow.jpg +0 -0
  334. data/test/regression/images/yellow.png +0 -0
  335. data/test/regression/images/zero_dpi.jpg +0 -0
  336. data/test/regression/klt.csv +0 -4
  337. data/test/regression/test_array_formula01.rb +0 -31
  338. data/test/regression/test_array_formula02.rb +0 -32
  339. data/test/regression/test_array_formula03.rb +0 -36
  340. data/test/regression/test_array_formula04.rb +0 -31
  341. data/test/regression/test_autofilter00.rb +0 -84
  342. data/test/regression/test_autofilter01.rb +0 -86
  343. data/test/regression/test_autofilter02.rb +0 -104
  344. data/test/regression/test_autofilter03.rb +0 -104
  345. data/test/regression/test_autofilter04.rb +0 -107
  346. data/test/regression/test_autofilter05.rb +0 -108
  347. data/test/regression/test_autofilter06.rb +0 -108
  348. data/test/regression/test_autofilter07.rb +0 -107
  349. data/test/regression/test_autofilter08.rb +0 -110
  350. data/test/regression/test_autofilter09.rb +0 -110
  351. data/test/regression/test_autofilter10.rb +0 -110
  352. data/test/regression/test_background01.rb +0 -23
  353. data/test/regression/test_background02.rb +0 -23
  354. data/test/regression/test_background03.rb +0 -24
  355. data/test/regression/test_background04.rb +0 -25
  356. data/test/regression/test_background05.rb +0 -25
  357. data/test/regression/test_background06.rb +0 -31
  358. data/test/regression/test_background07.rb +0 -37
  359. data/test/regression/test_button01.rb +0 -23
  360. data/test/regression/test_button02.rb +0 -29
  361. data/test/regression/test_button03.rb +0 -24
  362. data/test/regression/test_button04.rb +0 -25
  363. data/test/regression/test_button05.rb +0 -28
  364. data/test/regression/test_button06.rb +0 -28
  365. data/test/regression/test_button07.rb +0 -35
  366. data/test/regression/test_button08.rb +0 -28
  367. data/test/regression/test_button13.rb +0 -30
  368. data/test/regression/test_button14.rb +0 -31
  369. data/test/regression/test_chart_area01.rb +0 -45
  370. data/test/regression/test_chart_area02.rb +0 -45
  371. data/test/regression/test_chart_area03.rb +0 -45
  372. data/test/regression/test_chart_area04.rb +0 -44
  373. data/test/regression/test_chart_axis01.rb +0 -45
  374. data/test/regression/test_chart_axis02.rb +0 -45
  375. data/test/regression/test_chart_axis03.rb +0 -67
  376. data/test/regression/test_chart_axis04.rb +0 -52
  377. data/test/regression/test_chart_axis05.rb +0 -47
  378. data/test/regression/test_chart_axis06.rb +0 -49
  379. data/test/regression/test_chart_axis07.rb +0 -53
  380. data/test/regression/test_chart_axis08.rb +0 -52
  381. data/test/regression/test_chart_axis09.rb +0 -46
  382. data/test/regression/test_chart_axis10.rb +0 -52
  383. data/test/regression/test_chart_axis11.rb +0 -46
  384. data/test/regression/test_chart_axis12.rb +0 -46
  385. data/test/regression/test_chart_axis13.rb +0 -52
  386. data/test/regression/test_chart_axis14.rb +0 -66
  387. data/test/regression/test_chart_axis15.rb +0 -47
  388. data/test/regression/test_chart_axis16.rb +0 -69
  389. data/test/regression/test_chart_axis17.rb +0 -45
  390. data/test/regression/test_chart_axis18.rb +0 -43
  391. data/test/regression/test_chart_axis19.rb +0 -45
  392. data/test/regression/test_chart_axis20.rb +0 -45
  393. data/test/regression/test_chart_axis21.rb +0 -49
  394. data/test/regression/test_chart_axis22.rb +0 -44
  395. data/test/regression/test_chart_axis23.rb +0 -45
  396. data/test/regression/test_chart_axis24.rb +0 -45
  397. data/test/regression/test_chart_axis25.rb +0 -44
  398. data/test/regression/test_chart_axis26.rb +0 -46
  399. data/test/regression/test_chart_axis27.rb +0 -44
  400. data/test/regression/test_chart_axis28.rb +0 -44
  401. data/test/regression/test_chart_axis29.rb +0 -43
  402. data/test/regression/test_chart_axis30.rb +0 -40
  403. data/test/regression/test_chart_axis31.rb +0 -40
  404. data/test/regression/test_chart_axis32.rb +0 -40
  405. data/test/regression/test_chart_axis33.rb +0 -44
  406. data/test/regression/test_chart_axis34.rb +0 -43
  407. data/test/regression/test_chart_axis35.rb +0 -43
  408. data/test/regression/test_chart_axis36.rb +0 -43
  409. data/test/regression/test_chart_axis37.rb +0 -45
  410. data/test/regression/test_chart_axis38.rb +0 -43
  411. data/test/regression/test_chart_axis39.rb +0 -50
  412. data/test/regression/test_chart_axis40.rb +0 -44
  413. data/test/regression/test_chart_axis41.rb +0 -48
  414. data/test/regression/test_chart_axis42.rb +0 -44
  415. data/test/regression/test_chart_axis43.rb +0 -44
  416. data/test/regression/test_chart_axis44.rb +0 -54
  417. data/test/regression/test_chart_axis45.rb +0 -54
  418. data/test/regression/test_chart_axis46.rb +0 -54
  419. data/test/regression/test_chart_axis47.rb +0 -52
  420. data/test/regression/test_chart_axis48.rb +0 -53
  421. data/test/regression/test_chart_bar01.rb +0 -44
  422. data/test/regression/test_chart_bar02.rb +0 -54
  423. data/test/regression/test_chart_bar03.rb +0 -66
  424. data/test/regression/test_chart_bar04.rb +0 -69
  425. data/test/regression/test_chart_bar05.rb +0 -39
  426. data/test/regression/test_chart_bar06.rb +0 -49
  427. data/test/regression/test_chart_bar07.rb +0 -53
  428. data/test/regression/test_chart_bar08.rb +0 -43
  429. data/test/regression/test_chart_bar09.rb +0 -42
  430. data/test/regression/test_chart_bar10.rb +0 -46
  431. data/test/regression/test_chart_bar11.rb +0 -72
  432. data/test/regression/test_chart_bar12.rb +0 -38
  433. data/test/regression/test_chart_bar13.rb +0 -48
  434. data/test/regression/test_chart_bar14.rb +0 -64
  435. data/test/regression/test_chart_bar15.rb +0 -51
  436. data/test/regression/test_chart_bar16.rb +0 -49
  437. data/test/regression/test_chart_bar17.rb +0 -45
  438. data/test/regression/test_chart_bar18.rb +0 -56
  439. data/test/regression/test_chart_bar19.rb +0 -48
  440. data/test/regression/test_chart_bar20.rb +0 -45
  441. data/test/regression/test_chart_bar21.rb +0 -49
  442. data/test/regression/test_chart_bar22.rb +0 -66
  443. data/test/regression/test_chart_bar23.rb +0 -60
  444. data/test/regression/test_chart_bar24.rb +0 -44
  445. data/test/regression/test_chart_blank01.rb +0 -41
  446. data/test/regression/test_chart_blank02.rb +0 -41
  447. data/test/regression/test_chart_blank03.rb +0 -41
  448. data/test/regression/test_chart_blank04.rb +0 -41
  449. data/test/regression/test_chart_blank05.rb +0 -44
  450. data/test/regression/test_chart_blank06.rb +0 -41
  451. data/test/regression/test_chart_chartarea01.rb +0 -52
  452. data/test/regression/test_chart_chartarea02.rb +0 -52
  453. data/test/regression/test_chart_chartarea03.rb +0 -55
  454. data/test/regression/test_chart_chartarea04.rb +0 -71
  455. data/test/regression/test_chart_chartarea05.rb +0 -49
  456. data/test/regression/test_chart_chartarea06.rb +0 -49
  457. data/test/regression/test_chart_clustered01.rb +0 -65
  458. data/test/regression/test_chart_column01.rb +0 -39
  459. data/test/regression/test_chart_column02.rb +0 -44
  460. data/test/regression/test_chart_column03.rb +0 -44
  461. data/test/regression/test_chart_column04.rb +0 -44
  462. data/test/regression/test_chart_column05.rb +0 -39
  463. data/test/regression/test_chart_column06.rb +0 -45
  464. data/test/regression/test_chart_column07.rb +0 -40
  465. data/test/regression/test_chart_column08.rb +0 -42
  466. data/test/regression/test_chart_column09.rb +0 -39
  467. data/test/regression/test_chart_column10.rb +0 -39
  468. data/test/regression/test_chart_column11.rb +0 -41
  469. data/test/regression/test_chart_column12.rb +0 -37
  470. data/test/regression/test_chart_combined01.rb +0 -37
  471. data/test/regression/test_chart_combined02.rb +0 -43
  472. data/test/regression/test_chart_combined03.rb +0 -45
  473. data/test/regression/test_chart_combined04.rb +0 -47
  474. data/test/regression/test_chart_combined05.rb +0 -49
  475. data/test/regression/test_chart_combined06.rb +0 -49
  476. data/test/regression/test_chart_combined07.rb +0 -53
  477. data/test/regression/test_chart_combined08.rb +0 -65
  478. data/test/regression/test_chart_combined09.rb +0 -50
  479. data/test/regression/test_chart_combined10.rb +0 -43
  480. data/test/regression/test_chart_combined11.rb +0 -63
  481. data/test/regression/test_chart_crossing01.rb +0 -49
  482. data/test/regression/test_chart_crossing02.rb +0 -47
  483. data/test/regression/test_chart_crossing03.rb +0 -52
  484. data/test/regression/test_chart_crossing04.rb +0 -52
  485. data/test/regression/test_chart_crossing05.rb +0 -46
  486. data/test/regression/test_chart_crossing06.rb +0 -46
  487. data/test/regression/test_chart_data_labels01.rb +0 -47
  488. data/test/regression/test_chart_data_labels02.rb +0 -47
  489. data/test/regression/test_chart_data_labels03.rb +0 -47
  490. data/test/regression/test_chart_data_labels04.rb +0 -47
  491. data/test/regression/test_chart_data_labels05.rb +0 -50
  492. data/test/regression/test_chart_data_labels06.rb +0 -50
  493. data/test/regression/test_chart_data_labels07.rb +0 -40
  494. data/test/regression/test_chart_data_labels08.rb +0 -46
  495. data/test/regression/test_chart_data_labels09.rb +0 -47
  496. data/test/regression/test_chart_data_labels10.rb +0 -47
  497. data/test/regression/test_chart_data_labels11.rb +0 -37
  498. data/test/regression/test_chart_data_labels12.rb +0 -37
  499. data/test/regression/test_chart_data_labels13.rb +0 -37
  500. data/test/regression/test_chart_data_labels14.rb +0 -37
  501. data/test/regression/test_chart_data_labels15.rb +0 -37
  502. data/test/regression/test_chart_data_labels16.rb +0 -40
  503. data/test/regression/test_chart_data_labels17.rb +0 -63
  504. data/test/regression/test_chart_data_labels18.rb +0 -53
  505. data/test/regression/test_chart_data_labels19.rb +0 -53
  506. data/test/regression/test_chart_data_labels20.rb +0 -44
  507. data/test/regression/test_chart_data_labels21.rb +0 -48
  508. data/test/regression/test_chart_data_labels22.rb +0 -47
  509. data/test/regression/test_chart_data_labels23.rb +0 -50
  510. data/test/regression/test_chart_data_labels24.rb +0 -50
  511. data/test/regression/test_chart_data_labels25.rb +0 -61
  512. data/test/regression/test_chart_data_labels26.rb +0 -44
  513. data/test/regression/test_chart_data_labels27.rb +0 -44
  514. data/test/regression/test_chart_data_labels28.rb +0 -52
  515. data/test/regression/test_chart_data_labels29.rb +0 -43
  516. data/test/regression/test_chart_data_labels30.rb +0 -46
  517. data/test/regression/test_chart_data_labels31.rb +0 -49
  518. data/test/regression/test_chart_data_labels32.rb +0 -54
  519. data/test/regression/test_chart_data_labels33.rb +0 -52
  520. data/test/regression/test_chart_data_labels34.rb +0 -54
  521. data/test/regression/test_chart_data_labels35.rb +0 -46
  522. data/test/regression/test_chart_data_labels36.rb +0 -54
  523. data/test/regression/test_chart_data_labels37.rb +0 -51
  524. data/test/regression/test_chart_data_labels38.rb +0 -54
  525. data/test/regression/test_chart_data_labels39.rb +0 -53
  526. data/test/regression/test_chart_data_labels40.rb +0 -53
  527. data/test/regression/test_chart_data_labels41.rb +0 -54
  528. data/test/regression/test_chart_data_labels42.rb +0 -58
  529. data/test/regression/test_chart_data_labels43.rb +0 -58
  530. data/test/regression/test_chart_data_labels44.rb +0 -56
  531. data/test/regression/test_chart_data_labels45.rb +0 -57
  532. data/test/regression/test_chart_data_labels46.rb +0 -61
  533. data/test/regression/test_chart_data_labels47.rb +0 -61
  534. data/test/regression/test_chart_data_labels48.rb +0 -55
  535. data/test/regression/test_chart_data_labels49.rb +0 -55
  536. data/test/regression/test_chart_data_labels50.rb +0 -57
  537. data/test/regression/test_chart_date01.rb +0 -53
  538. data/test/regression/test_chart_date02.rb +0 -59
  539. data/test/regression/test_chart_date03.rb +0 -59
  540. data/test/regression/test_chart_date04.rb +0 -61
  541. data/test/regression/test_chart_date05.rb +0 -57
  542. data/test/regression/test_chart_display_units01.rb +0 -35
  543. data/test/regression/test_chart_display_units02.rb +0 -36
  544. data/test/regression/test_chart_display_units03.rb +0 -36
  545. data/test/regression/test_chart_display_units04.rb +0 -36
  546. data/test/regression/test_chart_display_units05.rb +0 -36
  547. data/test/regression/test_chart_display_units06.rb +0 -36
  548. data/test/regression/test_chart_display_units07.rb +0 -36
  549. data/test/regression/test_chart_display_units08.rb +0 -36
  550. data/test/regression/test_chart_display_units09.rb +0 -36
  551. data/test/regression/test_chart_display_units10.rb +0 -36
  552. data/test/regression/test_chart_display_units11.rb +0 -36
  553. data/test/regression/test_chart_display_units12.rb +0 -41
  554. data/test/regression/test_chart_doughnut01.rb +0 -39
  555. data/test/regression/test_chart_doughnut02.rb +0 -38
  556. data/test/regression/test_chart_doughnut03.rb +0 -38
  557. data/test/regression/test_chart_doughnut04.rb +0 -38
  558. data/test/regression/test_chart_doughnut05.rb +0 -38
  559. data/test/regression/test_chart_doughnut06.rb +0 -34
  560. data/test/regression/test_chart_doughnut07.rb +0 -37
  561. data/test/regression/test_chart_drop_lines01.rb +0 -46
  562. data/test/regression/test_chart_drop_lines02.rb +0 -51
  563. data/test/regression/test_chart_drop_lines03.rb +0 -46
  564. data/test/regression/test_chart_drop_lines04.rb +0 -64
  565. data/test/regression/test_chart_errorbars01.rb +0 -46
  566. data/test/regression/test_chart_errorbars02.rb +0 -56
  567. data/test/regression/test_chart_errorbars03.rb +0 -52
  568. data/test/regression/test_chart_errorbars04.rb +0 -47
  569. data/test/regression/test_chart_errorbars05.rb +0 -46
  570. data/test/regression/test_chart_errorbars06.rb +0 -46
  571. data/test/regression/test_chart_errorbars07.rb +0 -65
  572. data/test/regression/test_chart_errorbars08.rb +0 -50
  573. data/test/regression/test_chart_errorbars09.rb +0 -50
  574. data/test/regression/test_chart_errorbars10.rb +0 -52
  575. data/test/regression/test_chart_font01.rb +0 -54
  576. data/test/regression/test_chart_font02.rb +0 -56
  577. data/test/regression/test_chart_font03.rb +0 -59
  578. data/test/regression/test_chart_font04.rb +0 -57
  579. data/test/regression/test_chart_font05.rb +0 -54
  580. data/test/regression/test_chart_font06.rb +0 -84
  581. data/test/regression/test_chart_font07.rb +0 -44
  582. data/test/regression/test_chart_font08.rb +0 -44
  583. data/test/regression/test_chart_font09.rb +0 -40
  584. data/test/regression/test_chart_format01.rb +0 -44
  585. data/test/regression/test_chart_format02.rb +0 -45
  586. data/test/regression/test_chart_format03.rb +0 -46
  587. data/test/regression/test_chart_format04.rb +0 -45
  588. data/test/regression/test_chart_format05.rb +0 -45
  589. data/test/regression/test_chart_format06.rb +0 -50
  590. data/test/regression/test_chart_format07.rb +0 -55
  591. data/test/regression/test_chart_format08.rb +0 -50
  592. data/test/regression/test_chart_format09.rb +0 -54
  593. data/test/regression/test_chart_format10.rb +0 -57
  594. data/test/regression/test_chart_format11.rb +0 -61
  595. data/test/regression/test_chart_format12.rb +0 -58
  596. data/test/regression/test_chart_format13.rb +0 -50
  597. data/test/regression/test_chart_format14.rb +0 -54
  598. data/test/regression/test_chart_format15.rb +0 -52
  599. data/test/regression/test_chart_format16.rb +0 -55
  600. data/test/regression/test_chart_format17.rb +0 -39
  601. data/test/regression/test_chart_format18.rb +0 -43
  602. data/test/regression/test_chart_format19.rb +0 -46
  603. data/test/regression/test_chart_format20.rb +0 -54
  604. data/test/regression/test_chart_format21.rb +0 -47
  605. data/test/regression/test_chart_format22.rb +0 -47
  606. data/test/regression/test_chart_format23.rb +0 -47
  607. data/test/regression/test_chart_format24.rb +0 -52
  608. data/test/regression/test_chart_format25.rb +0 -46
  609. data/test/regression/test_chart_format26.rb +0 -48
  610. data/test/regression/test_chart_format27.rb +0 -58
  611. data/test/regression/test_chart_format28.rb +0 -52
  612. data/test/regression/test_chart_format29.rb +0 -59
  613. data/test/regression/test_chart_format30.rb +0 -53
  614. data/test/regression/test_chart_format31.rb +0 -60
  615. data/test/regression/test_chart_gap01.rb +0 -47
  616. data/test/regression/test_chart_gap02.rb +0 -47
  617. data/test/regression/test_chart_gap03.rb +0 -47
  618. data/test/regression/test_chart_gap04.rb +0 -54
  619. data/test/regression/test_chart_gap05.rb +0 -56
  620. data/test/regression/test_chart_gradient01.rb +0 -43
  621. data/test/regression/test_chart_gradient02.rb +0 -43
  622. data/test/regression/test_chart_gradient03.rb +0 -46
  623. data/test/regression/test_chart_gradient04.rb +0 -46
  624. data/test/regression/test_chart_gradient05.rb +0 -46
  625. data/test/regression/test_chart_gradient06.rb +0 -46
  626. data/test/regression/test_chart_gradient07.rb +0 -44
  627. data/test/regression/test_chart_gradient08.rb +0 -43
  628. data/test/regression/test_chart_gradient09.rb +0 -43
  629. data/test/regression/test_chart_gradient10.rb +0 -43
  630. data/test/regression/test_chart_gradient11.rb +0 -43
  631. data/test/regression/test_chart_gradient12.rb +0 -46
  632. data/test/regression/test_chart_gradient13.rb +0 -46
  633. data/test/regression/test_chart_gridlines01.rb +0 -42
  634. data/test/regression/test_chart_gridlines02.rb +0 -47
  635. data/test/regression/test_chart_gridlines03.rb +0 -63
  636. data/test/regression/test_chart_gridlines04.rb +0 -44
  637. data/test/regression/test_chart_gridlines05.rb +0 -48
  638. data/test/regression/test_chart_gridlines06.rb +0 -53
  639. data/test/regression/test_chart_gridlines07.rb +0 -69
  640. data/test/regression/test_chart_gridlines08.rb +0 -45
  641. data/test/regression/test_chart_gridlines09.rb +0 -67
  642. data/test/regression/test_chart_layout01.rb +0 -48
  643. data/test/regression/test_chart_layout02.rb +0 -48
  644. data/test/regression/test_chart_layout03.rb +0 -49
  645. data/test/regression/test_chart_layout04.rb +0 -47
  646. data/test/regression/test_chart_layout05.rb +0 -64
  647. data/test/regression/test_chart_layout06.rb +0 -48
  648. data/test/regression/test_chart_layout07.rb +0 -48
  649. data/test/regression/test_chart_layout08.rb +0 -49
  650. data/test/regression/test_chart_legend01.rb +0 -41
  651. data/test/regression/test_chart_legend02.rb +0 -41
  652. data/test/regression/test_chart_legend03.rb +0 -41
  653. data/test/regression/test_chart_legend04.rb +0 -41
  654. data/test/regression/test_chart_legend05.rb +0 -41
  655. data/test/regression/test_chart_legend06.rb +0 -41
  656. data/test/regression/test_chart_legend07.rb +0 -38
  657. data/test/regression/test_chart_line01.rb +0 -39
  658. data/test/regression/test_chart_line02.rb +0 -44
  659. data/test/regression/test_chart_line03.rb +0 -39
  660. data/test/regression/test_chart_line04.rb +0 -39
  661. data/test/regression/test_chart_line05.rb +0 -43
  662. data/test/regression/test_chart_line06.rb +0 -43
  663. data/test/regression/test_chart_name01.rb +0 -43
  664. data/test/regression/test_chart_name02.rb +0 -55
  665. data/test/regression/test_chart_name03.rb +0 -55
  666. data/test/regression/test_chart_order01.rb +0 -54
  667. data/test/regression/test_chart_order02.rb +0 -54
  668. data/test/regression/test_chart_order03.rb +0 -60
  669. data/test/regression/test_chart_pattern01.rb +0 -49
  670. data/test/regression/test_chart_pattern02.rb +0 -106
  671. data/test/regression/test_chart_pattern03.rb +0 -105
  672. data/test/regression/test_chart_pattern04.rb +0 -105
  673. data/test/regression/test_chart_pattern05.rb +0 -105
  674. data/test/regression/test_chart_pattern06.rb +0 -105
  675. data/test/regression/test_chart_pattern07.rb +0 -105
  676. data/test/regression/test_chart_pattern08.rb +0 -105
  677. data/test/regression/test_chart_pattern09.rb +0 -57
  678. data/test/regression/test_chart_pattern10.rb +0 -57
  679. data/test/regression/test_chart_pie01.rb +0 -36
  680. data/test/regression/test_chart_pie02.rb +0 -38
  681. data/test/regression/test_chart_pie03.rb +0 -38
  682. data/test/regression/test_chart_pie04.rb +0 -38
  683. data/test/regression/test_chart_pie05.rb +0 -38
  684. data/test/regression/test_chart_points01.rb +0 -37
  685. data/test/regression/test_chart_points02.rb +0 -40
  686. data/test/regression/test_chart_points03.rb +0 -42
  687. data/test/regression/test_chart_points04.rb +0 -52
  688. data/test/regression/test_chart_points05.rb +0 -49
  689. data/test/regression/test_chart_points06.rb +0 -49
  690. data/test/regression/test_chart_radar01.rb +0 -39
  691. data/test/regression/test_chart_radar02.rb +0 -43
  692. data/test/regression/test_chart_radar03.rb +0 -43
  693. data/test/regression/test_chart_scatter01.rb +0 -45
  694. data/test/regression/test_chart_scatter02.rb +0 -49
  695. data/test/regression/test_chart_scatter03.rb +0 -49
  696. data/test/regression/test_chart_scatter04.rb +0 -49
  697. data/test/regression/test_chart_scatter05.rb +0 -49
  698. data/test/regression/test_chart_scatter06.rb +0 -51
  699. data/test/regression/test_chart_scatter07.rb +0 -59
  700. data/test/regression/test_chart_scatter08.rb +0 -57
  701. data/test/regression/test_chart_scatter09.rb +0 -59
  702. data/test/regression/test_chart_scatter10.rb +0 -59
  703. data/test/regression/test_chart_scatter11.rb +0 -59
  704. data/test/regression/test_chart_scatter12.rb +0 -51
  705. data/test/regression/test_chart_scatter13.rb +0 -51
  706. data/test/regression/test_chart_scatter14.rb +0 -52
  707. data/test/regression/test_chart_scatter15.rb +0 -44
  708. data/test/regression/test_chart_size01.rb +0 -41
  709. data/test/regression/test_chart_size02.rb +0 -41
  710. data/test/regression/test_chart_size03.rb +0 -42
  711. data/test/regression/test_chart_size04.rb +0 -41
  712. data/test/regression/test_chart_size05.rb +0 -39
  713. data/test/regression/test_chart_sparse01.rb +0 -51
  714. data/test/regression/test_chart_stock01.rb +0 -65
  715. data/test/regression/test_chart_stock02.rb +0 -71
  716. data/test/regression/test_chart_str01.rb +0 -43
  717. data/test/regression/test_chart_str02.rb +0 -47
  718. data/test/regression/test_chart_table01.rb +0 -42
  719. data/test/regression/test_chart_table02.rb +0 -47
  720. data/test/regression/test_chart_table03.rb +0 -56
  721. data/test/regression/test_chart_title01.rb +0 -39
  722. data/test/regression/test_chart_title02.rb +0 -39
  723. data/test/regression/test_chartsheet01.rb +0 -41
  724. data/test/regression/test_chartsheet02.rb +0 -48
  725. data/test/regression/test_chartsheet03.rb +0 -46
  726. data/test/regression/test_chartsheet04.rb +0 -46
  727. data/test/regression/test_chartsheet05.rb +0 -46
  728. data/test/regression/test_chartsheet06.rb +0 -42
  729. data/test/regression/test_chartsheet07.rb +0 -55
  730. data/test/regression/test_chartsheet08.rb +0 -59
  731. data/test/regression/test_chartsheet09.rb +0 -50
  732. data/test/regression/test_comment01.rb +0 -27
  733. data/test/regression/test_comment02.rb +0 -28
  734. data/test/regression/test_comment03.rb +0 -31
  735. data/test/regression/test_comment04.rb +0 -36
  736. data/test/regression/test_comment06.rb +0 -33
  737. data/test/regression/test_comment07.rb +0 -35
  738. data/test/regression/test_comment08.rb +0 -35
  739. data/test/regression/test_comment09.rb +0 -31
  740. data/test/regression/test_comment10.rb +0 -30
  741. data/test/regression/test_comment11.rb +0 -31
  742. data/test/regression/test_comment12.rb +0 -30
  743. data/test/regression/test_comment13.rb +0 -36
  744. data/test/regression/test_comment14.rb +0 -29
  745. data/test/regression/test_comment15.rb +0 -28
  746. data/test/regression/test_comment16.rb +0 -34
  747. data/test/regression/test_cond_format01.rb +0 -45
  748. data/test/regression/test_cond_format02.rb +0 -40
  749. data/test/regression/test_cond_format03.rb +0 -51
  750. data/test/regression/test_cond_format04.rb +0 -50
  751. data/test/regression/test_cond_format05.rb +0 -40
  752. data/test/regression/test_cond_format06.rb +0 -44
  753. data/test/regression/test_cond_format07.rb +0 -61
  754. data/test/regression/test_cond_format08.rb +0 -45
  755. data/test/regression/test_cond_format10.rb +0 -42
  756. data/test/regression/test_cond_format11.rb +0 -46
  757. data/test/regression/test_cond_format12.rb +0 -46
  758. data/test/regression/test_cond_format13.rb +0 -52
  759. data/test/regression/test_cond_format14.rb +0 -42
  760. data/test/regression/test_cond_format15.rb +0 -53
  761. data/test/regression/test_cond_format16.rb +0 -53
  762. data/test/regression/test_cond_format17.rb +0 -37
  763. data/test/regression/test_cond_format18.rb +0 -136
  764. data/test/regression/test_cond_format19.rb +0 -64
  765. data/test/regression/test_cond_format20.rb +0 -43
  766. data/test/regression/test_custom_colors01.rb +0 -33
  767. data/test/regression/test_data_validation01.rb +0 -22
  768. data/test/regression/test_data_validation02.rb +0 -27
  769. data/test/regression/test_data_validation03.rb +0 -44
  770. data/test/regression/test_data_validation04.rb +0 -37
  771. data/test/regression/test_data_validation05.rb +0 -36
  772. data/test/regression/test_data_validation08.rb +0 -24
  773. data/test/regression/test_date_1904_01.rb +0 -31
  774. data/test/regression/test_date_1904_02.rb +0 -34
  775. data/test/regression/test_date_examples01.rb +0 -48
  776. data/test/regression/test_default_format01.rb +0 -22
  777. data/test/regression/test_default_row01.rb +0 -26
  778. data/test/regression/test_default_row02.rb +0 -28
  779. data/test/regression/test_default_row03.rb +0 -28
  780. data/test/regression/test_default_row04.rb +0 -31
  781. data/test/regression/test_default_row05.rb +0 -32
  782. data/test/regression/test_defined_name01.rb +0 -45
  783. data/test/regression/test_defined_name02.rb +0 -30
  784. data/test/regression/test_defined_name03.rb +0 -30
  785. data/test/regression/test_defined_name04.rb +0 -50
  786. data/test/regression/test_dynamic_array01.rb +0 -25
  787. data/test/regression/test_escapes01.rb +0 -35
  788. data/test/regression/test_escapes02.rb +0 -32
  789. data/test/regression/test_escapes03.rb +0 -33
  790. data/test/regression/test_escapes04.rb +0 -31
  791. data/test/regression/test_escapes05.rb +0 -32
  792. data/test/regression/test_escapes06.rb +0 -26
  793. data/test/regression/test_escapes07.rb +0 -29
  794. data/test/regression/test_escapes08.rb +0 -30
  795. data/test/regression/test_excel2003_style01.rb +0 -21
  796. data/test/regression/test_excel2003_style02.rb +0 -37
  797. data/test/regression/test_excel2003_style03.rb +0 -40
  798. data/test/regression/test_excel2003_style04.rb +0 -24
  799. data/test/regression/test_excel2003_style05.rb +0 -31
  800. data/test/regression/test_excel2003_style06.rb +0 -31
  801. data/test/regression/test_excel2003_style07.rb +0 -31
  802. data/test/regression/test_excel2003_style08.rb +0 -26
  803. data/test/regression/test_firstsheet01.rb +0 -43
  804. data/test/regression/test_fit_to_pages01.rb +0 -35
  805. data/test/regression/test_fit_to_pages02.rb +0 -35
  806. data/test/regression/test_fit_to_pages03.rb +0 -35
  807. data/test/regression/test_fit_to_pages04.rb +0 -35
  808. data/test/regression/test_fit_to_pages05.rb +0 -35
  809. data/test/regression/test_format01.rb +0 -35
  810. data/test/regression/test_format02.rb +0 -47
  811. data/test/regression/test_format03.rb +0 -31
  812. data/test/regression/test_format04.rb +0 -41
  813. data/test/regression/test_format05.rb +0 -26
  814. data/test/regression/test_format11.rb +0 -28
  815. data/test/regression/test_format12.rb +0 -41
  816. data/test/regression/test_format13.rb +0 -31
  817. data/test/regression/test_format14.rb +0 -26
  818. data/test/regression/test_format15.rb +0 -26
  819. data/test/regression/test_format16.rb +0 -24
  820. data/test/regression/test_format17.rb +0 -24
  821. data/test/regression/test_formula_results01.rb +0 -37
  822. data/test/regression/test_gridlines01.rb +0 -34
  823. data/test/regression/test_header01.rb +0 -28
  824. data/test/regression/test_header02.rb +0 -28
  825. data/test/regression/test_header03.rb +0 -31
  826. data/test/regression/test_header04.rb +0 -30
  827. data/test/regression/test_header_image01.rb +0 -26
  828. data/test/regression/test_header_image02.rb +0 -33
  829. data/test/regression/test_header_image03.rb +0 -34
  830. data/test/regression/test_header_image04.rb +0 -34
  831. data/test/regression/test_header_image05.rb +0 -28
  832. data/test/regression/test_header_image06.rb +0 -32
  833. data/test/regression/test_header_image07.rb +0 -29
  834. data/test/regression/test_header_image08.rb +0 -33
  835. data/test/regression/test_header_image09.rb +0 -32
  836. data/test/regression/test_header_image10.rb +0 -36
  837. data/test/regression/test_header_image11.rb +0 -28
  838. data/test/regression/test_header_image12.rb +0 -28
  839. data/test/regression/test_header_image13.rb +0 -36
  840. data/test/regression/test_header_image14.rb +0 -36
  841. data/test/regression/test_header_image15.rb +0 -36
  842. data/test/regression/test_header_image16.rb +0 -42
  843. data/test/regression/test_header_image17.rb +0 -46
  844. data/test/regression/test_header_image18.rb +0 -48
  845. data/test/regression/test_header_image19.rb +0 -36
  846. data/test/regression/test_hide01.rb +0 -25
  847. data/test/regression/test_hyperlink01.rb +0 -26
  848. data/test/regression/test_hyperlink02.rb +0 -30
  849. data/test/regression/test_hyperlink03.rb +0 -36
  850. data/test/regression/test_hyperlink04.rb +0 -34
  851. data/test/regression/test_hyperlink05.rb +0 -29
  852. data/test/regression/test_hyperlink06.rb +0 -28
  853. data/test/regression/test_hyperlink07.rb +0 -23
  854. data/test/regression/test_hyperlink08.rb +0 -27
  855. data/test/regression/test_hyperlink09.rb +0 -28
  856. data/test/regression/test_hyperlink10.rb +0 -27
  857. data/test/regression/test_hyperlink11.rb +0 -27
  858. data/test/regression/test_hyperlink12.rb +0 -28
  859. data/test/regression/test_hyperlink13.rb +0 -27
  860. data/test/regression/test_hyperlink14.rb +0 -27
  861. data/test/regression/test_hyperlink15.rb +0 -29
  862. data/test/regression/test_hyperlink16.rb +0 -29
  863. data/test/regression/test_hyperlink17.rb +0 -30
  864. data/test/regression/test_hyperlink18.rb +0 -30
  865. data/test/regression/test_hyperlink20.rb +0 -32
  866. data/test/regression/test_hyperlink21.rb +0 -27
  867. data/test/regression/test_hyperlink22.rb +0 -27
  868. data/test/regression/test_hyperlink23.rb +0 -27
  869. data/test/regression/test_hyperlink24.rb +0 -27
  870. data/test/regression/test_hyperlink25.rb +0 -30
  871. data/test/regression/test_hyperlink26.rb +0 -30
  872. data/test/regression/test_hyperlink27.rb +0 -27
  873. data/test/regression/test_hyperlink28.rb +0 -50
  874. data/test/regression/test_hyperlink29.rb +0 -27
  875. data/test/regression/test_hyperlink30.rb +0 -36
  876. data/test/regression/test_hyperlink32.rb +0 -27
  877. data/test/regression/test_hyperlink33.rb +0 -28
  878. data/test/regression/test_hyperlink34.rb +0 -33
  879. data/test/regression/test_hyperlink35.rb +0 -39
  880. data/test/regression/test_hyperlink36.rb +0 -34
  881. data/test/regression/test_hyperlink37.rb +0 -33
  882. data/test/regression/test_hyperlink38.rb +0 -27
  883. data/test/regression/test_hyperlink39.rb +0 -27
  884. data/test/regression/test_hyperlink40.rb +0 -27
  885. data/test/regression/test_hyperlink41.rb +0 -27
  886. data/test/regression/test_hyperlink42.rb +0 -27
  887. data/test/regression/test_hyperlink43.rb +0 -27
  888. data/test/regression/test_hyperlink44.rb +0 -27
  889. data/test/regression/test_hyperlink45.rb +0 -27
  890. data/test/regression/test_hyperlink47.rb +0 -27
  891. data/test/regression/test_hyperlink48.rb +0 -31
  892. data/test/regression/test_hyperlink49.rb +0 -29
  893. data/test/regression/test_hyperlink50.rb +0 -27
  894. data/test/regression/test_hyperlink51.rb +0 -27
  895. data/test/regression/test_ignore_error01.rb +0 -23
  896. data/test/regression/test_ignore_error02.rb +0 -24
  897. data/test/regression/test_ignore_error03.rb +0 -26
  898. data/test/regression/test_ignore_error04.rb +0 -26
  899. data/test/regression/test_ignore_error05.rb +0 -32
  900. data/test/regression/test_ignore_error06.rb +0 -32
  901. data/test/regression/test_image01.rb +0 -23
  902. data/test/regression/test_image02.rb +0 -23
  903. data/test/regression/test_image03.rb +0 -23
  904. data/test/regression/test_image04.rb +0 -23
  905. data/test/regression/test_image05.rb +0 -26
  906. data/test/regression/test_image06.rb +0 -36
  907. data/test/regression/test_image07.rb +0 -25
  908. data/test/regression/test_image08.rb +0 -27
  909. data/test/regression/test_image09.rb +0 -24
  910. data/test/regression/test_image10.rb +0 -24
  911. data/test/regression/test_image11.rb +0 -24
  912. data/test/regression/test_image12.rb +0 -27
  913. data/test/regression/test_image13.rb +0 -27
  914. data/test/regression/test_image14.rb +0 -29
  915. data/test/regression/test_image15.rb +0 -31
  916. data/test/regression/test_image16.rb +0 -24
  917. data/test/regression/test_image17.rb +0 -23
  918. data/test/regression/test_image18.rb +0 -27
  919. data/test/regression/test_image19.rb +0 -24
  920. data/test/regression/test_image22.rb +0 -24
  921. data/test/regression/test_image23.rb +0 -30
  922. data/test/regression/test_image24.rb +0 -24
  923. data/test/regression/test_image25.rb +0 -24
  924. data/test/regression/test_image26.rb +0 -30
  925. data/test/regression/test_image27.rb +0 -24
  926. data/test/regression/test_image28.rb +0 -27
  927. data/test/regression/test_image29.rb +0 -27
  928. data/test/regression/test_image30.rb +0 -27
  929. data/test/regression/test_image31.rb +0 -30
  930. data/test/regression/test_image32.rb +0 -28
  931. data/test/regression/test_image33.rb +0 -32
  932. data/test/regression/test_image35.rb +0 -26
  933. data/test/regression/test_image36.rb +0 -26
  934. data/test/regression/test_image44.rb +0 -28
  935. data/test/regression/test_image45.rb +0 -29
  936. data/test/regression/test_image46.rb +0 -29
  937. data/test/regression/test_image47.rb +0 -28
  938. data/test/regression/test_image48.rb +0 -32
  939. data/test/regression/test_image49.rb +0 -38
  940. data/test/regression/test_image50.rb +0 -24
  941. data/test/regression/test_image51.rb +0 -30
  942. data/test/regression/test_image52.rb +0 -26
  943. data/test/regression/test_image53.rb +0 -26
  944. data/test/regression/test_image54.rb +0 -26
  945. data/test/regression/test_image55.rb +0 -27
  946. data/test/regression/test_image56.rb +0 -23
  947. data/test/regression/test_image57.rb +0 -23
  948. data/test/regression/test_landscape01.rb +0 -27
  949. data/test/regression/test_macro01.rb +0 -29
  950. data/test/regression/test_merge_cells01.rb +0 -25
  951. data/test/regression/test_merge_range01.rb +0 -24
  952. data/test/regression/test_merge_range02.rb +0 -24
  953. data/test/regression/test_merge_range03.rb +0 -26
  954. data/test/regression/test_merge_range04.rb +0 -24
  955. data/test/regression/test_merge_range05.rb +0 -24
  956. data/test/regression/test_object_position01.rb +0 -26
  957. data/test/regression/test_object_position02.rb +0 -26
  958. data/test/regression/test_object_position03.rb +0 -26
  959. data/test/regression/test_object_position04.rb +0 -44
  960. data/test/regression/test_object_position06.rb +0 -28
  961. data/test/regression/test_object_position07.rb +0 -28
  962. data/test/regression/test_object_position08.rb +0 -47
  963. data/test/regression/test_object_position09.rb +0 -50
  964. data/test/regression/test_object_position10.rb +0 -28
  965. data/test/regression/test_object_position12.rb +0 -25
  966. data/test/regression/test_object_position13.rb +0 -25
  967. data/test/regression/test_object_position14.rb +0 -25
  968. data/test/regression/test_object_position15.rb +0 -29
  969. data/test/regression/test_object_position16.rb +0 -29
  970. data/test/regression/test_object_position17.rb +0 -29
  971. data/test/regression/test_object_position18.rb +0 -29
  972. data/test/regression/test_object_position19.rb +0 -29
  973. data/test/regression/test_object_position20.rb +0 -29
  974. data/test/regression/test_outline01.rb +0 -84
  975. data/test/regression/test_outline02.rb +0 -87
  976. data/test/regression/test_outline03.rb +0 -57
  977. data/test/regression/test_outline04.rb +0 -53
  978. data/test/regression/test_outline05.rb +0 -88
  979. data/test/regression/test_outline06.rb +0 -87
  980. data/test/regression/test_page_breaks01.rb +0 -34
  981. data/test/regression/test_page_breaks02.rb +0 -34
  982. data/test/regression/test_page_breaks03.rb +0 -34
  983. data/test/regression/test_page_breaks04.rb +0 -34
  984. data/test/regression/test_page_breaks05.rb +0 -34
  985. data/test/regression/test_page_breaks06.rb +0 -35
  986. data/test/regression/test_page_view01.rb +0 -34
  987. data/test/regression/test_panes01.rb +0 -61
  988. data/test/regression/test_print_across01.rb +0 -35
  989. data/test/regression/test_print_area01.rb +0 -34
  990. data/test/regression/test_print_area02.rb +0 -34
  991. data/test/regression/test_print_area03.rb +0 -34
  992. data/test/regression/test_print_area04.rb +0 -34
  993. data/test/regression/test_print_area05.rb +0 -34
  994. data/test/regression/test_print_area06.rb +0 -34
  995. data/test/regression/test_print_area07.rb +0 -35
  996. data/test/regression/test_print_options01.rb +0 -34
  997. data/test/regression/test_print_options02.rb +0 -34
  998. data/test/regression/test_print_options03.rb +0 -34
  999. data/test/regression/test_print_options04.rb +0 -34
  1000. data/test/regression/test_print_options05.rb +0 -37
  1001. data/test/regression/test_print_options06.rb +0 -35
  1002. data/test/regression/test_print_options07.rb +0 -31
  1003. data/test/regression/test_print_scale01.rb +0 -35
  1004. data/test/regression/test_print_scale02.rb +0 -35
  1005. data/test/regression/test_properties01.rb +0 -36
  1006. data/test/regression/test_properties02.rb +0 -25
  1007. data/test/regression/test_properties03.rb +0 -26
  1008. data/test/regression/test_properties04.rb +0 -61
  1009. data/test/regression/test_properties05.rb +0 -30
  1010. data/test/regression/test_protect01.rb +0 -28
  1011. data/test/regression/test_protect02.rb +0 -30
  1012. data/test/regression/test_protect03.rb +0 -30
  1013. data/test/regression/test_protect04.rb +0 -32
  1014. data/test/regression/test_protect05.rb +0 -35
  1015. data/test/regression/test_protect06.rb +0 -35
  1016. data/test/regression/test_protect07.rb +0 -23
  1017. data/test/regression/test_quote_name01.rb +0 -48
  1018. data/test/regression/test_quote_name03.rb +0 -41
  1019. data/test/regression/test_quote_name04.rb +0 -40
  1020. data/test/regression/test_repeat01.rb +0 -34
  1021. data/test/regression/test_repeat02.rb +0 -34
  1022. data/test/regression/test_repeat03.rb +0 -35
  1023. data/test/regression/test_repeat04.rb +0 -34
  1024. data/test/regression/test_repeat05.rb +0 -41
  1025. data/test/regression/test_rich_string01.rb +0 -28
  1026. data/test/regression/test_rich_string02.rb +0 -28
  1027. data/test/regression/test_rich_string03.rb +0 -28
  1028. data/test/regression/test_rich_string04.rb +0 -28
  1029. data/test/regression/test_rich_string05.rb +0 -30
  1030. data/test/regression/test_rich_string06.rb +0 -27
  1031. data/test/regression/test_rich_string07.rb +0 -33
  1032. data/test/regression/test_rich_string08.rb +0 -29
  1033. data/test/regression/test_rich_string09.rb +0 -31
  1034. data/test/regression/test_rich_string10.rb +0 -30
  1035. data/test/regression/test_rich_string11.rb +0 -29
  1036. data/test/regression/test_rich_string12.rb +0 -32
  1037. data/test/regression/test_row_col_format01.rb +0 -24
  1038. data/test/regression/test_row_col_format02.rb +0 -25
  1039. data/test/regression/test_row_col_format03.rb +0 -24
  1040. data/test/regression/test_row_col_format04.rb +0 -25
  1041. data/test/regression/test_row_col_format05.rb +0 -26
  1042. data/test/regression/test_row_col_format06.rb +0 -29
  1043. data/test/regression/test_row_col_format07.rb +0 -24
  1044. data/test/regression/test_row_col_format08.rb +0 -34
  1045. data/test/regression/test_row_col_format09.rb +0 -33
  1046. data/test/regression/test_row_col_format10.rb +0 -24
  1047. data/test/regression/test_row_col_format11.rb +0 -23
  1048. data/test/regression/test_row_col_format12.rb +0 -23
  1049. data/test/regression/test_row_col_format13.rb +0 -28
  1050. data/test/regression/test_row_col_format14.rb +0 -28
  1051. data/test/regression/test_selection01.rb +0 -23
  1052. data/test/regression/test_selection02.rb +0 -33
  1053. data/test/regression/test_set_column01.rb +0 -63
  1054. data/test/regression/test_set_column02.rb +0 -64
  1055. data/test/regression/test_set_column03.rb +0 -34
  1056. data/test/regression/test_set_column04.rb +0 -42
  1057. data/test/regression/test_set_column05.rb +0 -52
  1058. data/test/regression/test_set_column06.rb +0 -49
  1059. data/test/regression/test_set_column07.rb +0 -45
  1060. data/test/regression/test_set_column08.rb +0 -42
  1061. data/test/regression/test_set_column09.rb +0 -31
  1062. data/test/regression/test_set_column10.rb +0 -55
  1063. data/test/regression/test_set_column11.rb +0 -48
  1064. data/test/regression/test_set_print_scale01.rb +0 -36
  1065. data/test/regression/test_set_row01.rb +0 -35
  1066. data/test/regression/test_set_row02.rb +0 -35
  1067. data/test/regression/test_set_row03.rb +0 -35
  1068. data/test/regression/test_set_row04.rb +0 -35
  1069. data/test/regression/test_set_start_page01.rb +0 -33
  1070. data/test/regression/test_set_start_page02.rb +0 -33
  1071. data/test/regression/test_set_start_page03.rb +0 -33
  1072. data/test/regression/test_shape01.rb +0 -25
  1073. data/test/regression/test_shape02.rb +0 -42
  1074. data/test/regression/test_shape03.rb +0 -45
  1075. data/test/regression/test_shape04.rb +0 -43
  1076. data/test/regression/test_shape_connect01.rb +0 -48
  1077. data/test/regression/test_shape_connect02.rb +0 -42
  1078. data/test/regression/test_shape_connect03.rb +0 -78
  1079. data/test/regression/test_shape_connect04.rb +0 -75
  1080. data/test/regression/test_shape_scale01.rb +0 -45
  1081. data/test/regression/test_shape_stencil01.rb +0 -39
  1082. data/test/regression/test_shared_strings01.rb +0 -32
  1083. data/test/regression/test_shared_strings02.rb +0 -45
  1084. data/test/regression/test_shared_strings_encoding.rb +0 -0
  1085. data/test/regression/test_simple01.rb +0 -24
  1086. data/test/regression/test_simple02.rb +0 -32
  1087. data/test/regression/test_simple03.rb +0 -39
  1088. data/test/regression/test_simple04.rb +0 -29
  1089. data/test/regression/test_simple05.rb +0 -40
  1090. data/test/regression/test_tab_color01.rb +0 -20
  1091. data/test/regression/test_table01.rb +0 -27
  1092. data/test/regression/test_table02.rb +0 -37
  1093. data/test/regression/test_table03.rb +0 -33
  1094. data/test/regression/test_table04.rb +0 -37
  1095. data/test/regression/test_table05.rb +0 -41
  1096. data/test/regression/test_table06.rb +0 -44
  1097. data/test/regression/test_table07.rb +0 -29
  1098. data/test/regression/test_table08.rb +0 -48
  1099. data/test/regression/test_table09.rb +0 -65
  1100. data/test/regression/test_table10.rb +0 -68
  1101. data/test/regression/test_table11.rb +0 -37
  1102. data/test/regression/test_table12.rb +0 -36
  1103. data/test/regression/test_table13.rb +0 -51
  1104. data/test/regression/test_table14.rb +0 -51
  1105. data/test/regression/test_table15.rb +0 -37
  1106. data/test/regression/test_table16.rb +0 -37
  1107. data/test/regression/test_table17.rb +0 -70
  1108. data/test/regression/test_table20.rb +0 -34
  1109. data/test/regression/test_table21.rb +0 -36
  1110. data/test/regression/test_table22.rb +0 -32
  1111. data/test/regression/test_table23.rb +0 -56
  1112. data/test/regression/test_table24.rb +0 -27
  1113. data/test/regression/test_table25.rb +0 -27
  1114. data/test/regression/test_table26.rb +0 -38
  1115. data/test/regression/test_tutorial01.rb +0 -38
  1116. data/test/regression/test_tutorial02.rb +0 -44
  1117. data/test/regression/test_tutorial03.rb +0 -49
  1118. data/test/regression/test_types02.rb +0 -25
  1119. data/test/regression/test_types08.rb +0 -31
  1120. data/test/regression/test_update_range_format_with_params.rb +0 -42
  1121. data/test/regression/test_urls_as_strings.rb +0 -25
  1122. data/test/regression/test_utf8_01.rb +0 -23
  1123. data/test/regression/test_utf8_03.rb +0 -23
  1124. data/test/regression/test_utf8_04.rb +0 -23
  1125. data/test/regression/test_utf8_05.rb +0 -26
  1126. data/test/regression/test_utf8_06.rb +0 -28
  1127. data/test/regression/test_utf8_07.rb +0 -27
  1128. data/test/regression/test_utf8_08.rb +0 -38
  1129. data/test/regression/test_utf8_09.rb +0 -20
  1130. data/test/regression/test_utf8_10.rb +0 -42
  1131. data/test/regression/test_utf8_11.rb +0 -23
  1132. data/test/regression/test_vml01.rb +0 -29
  1133. data/test/regression/test_vml02.rb +0 -31
  1134. data/test/regression/test_vml03.rb +0 -40
  1135. data/test/regression/xlsx_files/array_formula01.xlsx +0 -0
  1136. data/test/regression/xlsx_files/array_formula02.xlsx +0 -0
  1137. data/test/regression/xlsx_files/array_formula03.xlsx +0 -0
  1138. data/test/regression/xlsx_files/array_formula04.xlsx +0 -0
  1139. data/test/regression/xlsx_files/autofilter00.xlsx +0 -0
  1140. data/test/regression/xlsx_files/autofilter01.xlsx +0 -0
  1141. data/test/regression/xlsx_files/autofilter02.xlsx +0 -0
  1142. data/test/regression/xlsx_files/autofilter03.xlsx +0 -0
  1143. data/test/regression/xlsx_files/autofilter04.xlsx +0 -0
  1144. data/test/regression/xlsx_files/autofilter05.xlsx +0 -0
  1145. data/test/regression/xlsx_files/autofilter06.xlsx +0 -0
  1146. data/test/regression/xlsx_files/autofilter07.xlsx +0 -0
  1147. data/test/regression/xlsx_files/autofilter08.xlsx +0 -0
  1148. data/test/regression/xlsx_files/autofilter09.xlsx +0 -0
  1149. data/test/regression/xlsx_files/autofilter10.xlsx +0 -0
  1150. data/test/regression/xlsx_files/background01.xlsx +0 -0
  1151. data/test/regression/xlsx_files/background02.xlsx +0 -0
  1152. data/test/regression/xlsx_files/background03.xlsx +0 -0
  1153. data/test/regression/xlsx_files/background04.xlsx +0 -0
  1154. data/test/regression/xlsx_files/background05.xlsx +0 -0
  1155. data/test/regression/xlsx_files/background06.xlsx +0 -0
  1156. data/test/regression/xlsx_files/background07.xlsx +0 -0
  1157. data/test/regression/xlsx_files/button01.xlsx +0 -0
  1158. data/test/regression/xlsx_files/button02.xlsx +0 -0
  1159. data/test/regression/xlsx_files/button03.xlsx +0 -0
  1160. data/test/regression/xlsx_files/button04.xlsx +0 -0
  1161. data/test/regression/xlsx_files/button05.xlsx +0 -0
  1162. data/test/regression/xlsx_files/button07.xlsm +0 -0
  1163. data/test/regression/xlsx_files/button08.xlsx +0 -0
  1164. data/test/regression/xlsx_files/button09.xlsx +0 -0
  1165. data/test/regression/xlsx_files/button10.xlsx +0 -0
  1166. data/test/regression/xlsx_files/button11.xlsx +0 -0
  1167. data/test/regression/xlsx_files/button12.xlsx +0 -0
  1168. data/test/regression/xlsx_files/chart_area01.xlsx +0 -0
  1169. data/test/regression/xlsx_files/chart_area02.xlsx +0 -0
  1170. data/test/regression/xlsx_files/chart_area03.xlsx +0 -0
  1171. data/test/regression/xlsx_files/chart_area04.xlsx +0 -0
  1172. data/test/regression/xlsx_files/chart_axis01.xlsx +0 -0
  1173. data/test/regression/xlsx_files/chart_axis02.xlsx +0 -0
  1174. data/test/regression/xlsx_files/chart_axis03.xlsx +0 -0
  1175. data/test/regression/xlsx_files/chart_axis04.xlsx +0 -0
  1176. data/test/regression/xlsx_files/chart_axis05.xlsx +0 -0
  1177. data/test/regression/xlsx_files/chart_axis06.xlsx +0 -0
  1178. data/test/regression/xlsx_files/chart_axis07.xlsx +0 -0
  1179. data/test/regression/xlsx_files/chart_axis08.xlsx +0 -0
  1180. data/test/regression/xlsx_files/chart_axis09.xlsx +0 -0
  1181. data/test/regression/xlsx_files/chart_axis10.xlsx +0 -0
  1182. data/test/regression/xlsx_files/chart_axis11.xlsx +0 -0
  1183. data/test/regression/xlsx_files/chart_axis12.xlsx +0 -0
  1184. data/test/regression/xlsx_files/chart_axis13.xlsx +0 -0
  1185. data/test/regression/xlsx_files/chart_axis14.xlsx +0 -0
  1186. data/test/regression/xlsx_files/chart_axis15.xlsx +0 -0
  1187. data/test/regression/xlsx_files/chart_axis16.xlsx +0 -0
  1188. data/test/regression/xlsx_files/chart_axis17.xlsx +0 -0
  1189. data/test/regression/xlsx_files/chart_axis18.xlsx +0 -0
  1190. data/test/regression/xlsx_files/chart_axis19.xlsx +0 -0
  1191. data/test/regression/xlsx_files/chart_axis20.xlsx +0 -0
  1192. data/test/regression/xlsx_files/chart_axis21.xlsx +0 -0
  1193. data/test/regression/xlsx_files/chart_axis22.xlsx +0 -0
  1194. data/test/regression/xlsx_files/chart_axis23.xlsx +0 -0
  1195. data/test/regression/xlsx_files/chart_axis24.xlsx +0 -0
  1196. data/test/regression/xlsx_files/chart_axis25.xlsx +0 -0
  1197. data/test/regression/xlsx_files/chart_axis26.xlsx +0 -0
  1198. data/test/regression/xlsx_files/chart_axis27.xlsx +0 -0
  1199. data/test/regression/xlsx_files/chart_axis28.xlsx +0 -0
  1200. data/test/regression/xlsx_files/chart_axis29.xlsx +0 -0
  1201. data/test/regression/xlsx_files/chart_axis30.xlsx +0 -0
  1202. data/test/regression/xlsx_files/chart_axis31.xlsx +0 -0
  1203. data/test/regression/xlsx_files/chart_axis32.xlsx +0 -0
  1204. data/test/regression/xlsx_files/chart_axis33.xlsx +0 -0
  1205. data/test/regression/xlsx_files/chart_axis34.xlsx +0 -0
  1206. data/test/regression/xlsx_files/chart_axis35.xlsx +0 -0
  1207. data/test/regression/xlsx_files/chart_axis36.xlsx +0 -0
  1208. data/test/regression/xlsx_files/chart_axis37.xlsx +0 -0
  1209. data/test/regression/xlsx_files/chart_axis38.xlsx +0 -0
  1210. data/test/regression/xlsx_files/chart_axis39.xlsx +0 -0
  1211. data/test/regression/xlsx_files/chart_axis40.xlsx +0 -0
  1212. data/test/regression/xlsx_files/chart_axis41.xlsx +0 -0
  1213. data/test/regression/xlsx_files/chart_axis42.xlsx +0 -0
  1214. data/test/regression/xlsx_files/chart_axis43.xlsx +0 -0
  1215. data/test/regression/xlsx_files/chart_axis44.xlsx +0 -0
  1216. data/test/regression/xlsx_files/chart_axis45.xlsx +0 -0
  1217. data/test/regression/xlsx_files/chart_axis46.xlsx +0 -0
  1218. data/test/regression/xlsx_files/chart_axis47.xlsx +0 -0
  1219. data/test/regression/xlsx_files/chart_axis48.xlsx +0 -0
  1220. data/test/regression/xlsx_files/chart_bar01.xlsx +0 -0
  1221. data/test/regression/xlsx_files/chart_bar02.xlsx +0 -0
  1222. data/test/regression/xlsx_files/chart_bar03.xlsx +0 -0
  1223. data/test/regression/xlsx_files/chart_bar04.xlsx +0 -0
  1224. data/test/regression/xlsx_files/chart_bar05.xlsx +0 -0
  1225. data/test/regression/xlsx_files/chart_bar06.xlsx +0 -0
  1226. data/test/regression/xlsx_files/chart_bar07.xlsx +0 -0
  1227. data/test/regression/xlsx_files/chart_bar08.xlsx +0 -0
  1228. data/test/regression/xlsx_files/chart_bar09.xlsx +0 -0
  1229. data/test/regression/xlsx_files/chart_bar10.xlsx +0 -0
  1230. data/test/regression/xlsx_files/chart_bar11.xlsx +0 -0
  1231. data/test/regression/xlsx_files/chart_bar12.xlsx +0 -0
  1232. data/test/regression/xlsx_files/chart_bar13.xlsx +0 -0
  1233. data/test/regression/xlsx_files/chart_bar14.xlsx +0 -0
  1234. data/test/regression/xlsx_files/chart_bar15.xlsx +0 -0
  1235. data/test/regression/xlsx_files/chart_bar16.xlsx +0 -0
  1236. data/test/regression/xlsx_files/chart_bar17.xlsx +0 -0
  1237. data/test/regression/xlsx_files/chart_bar18.xlsx +0 -0
  1238. data/test/regression/xlsx_files/chart_bar19.xlsx +0 -0
  1239. data/test/regression/xlsx_files/chart_bar20.xlsx +0 -0
  1240. data/test/regression/xlsx_files/chart_bar21.xlsx +0 -0
  1241. data/test/regression/xlsx_files/chart_bar22.xlsx +0 -0
  1242. data/test/regression/xlsx_files/chart_bar23.xlsx +0 -0
  1243. data/test/regression/xlsx_files/chart_bar24.xlsx +0 -0
  1244. data/test/regression/xlsx_files/chart_blank01.xlsx +0 -0
  1245. data/test/regression/xlsx_files/chart_blank02.xlsx +0 -0
  1246. data/test/regression/xlsx_files/chart_blank03.xlsx +0 -0
  1247. data/test/regression/xlsx_files/chart_blank04.xlsx +0 -0
  1248. data/test/regression/xlsx_files/chart_blank05.xlsx +0 -0
  1249. data/test/regression/xlsx_files/chart_blank06.xlsx +0 -0
  1250. data/test/regression/xlsx_files/chart_chartarea01.xlsx +0 -0
  1251. data/test/regression/xlsx_files/chart_chartarea03.xlsx +0 -0
  1252. data/test/regression/xlsx_files/chart_chartarea04.xlsx +0 -0
  1253. data/test/regression/xlsx_files/chart_chartarea05.xlsx +0 -0
  1254. data/test/regression/xlsx_files/chart_chartarea06.xlsx +0 -0
  1255. data/test/regression/xlsx_files/chart_clustered01.xlsx +0 -0
  1256. data/test/regression/xlsx_files/chart_column01.xlsx +0 -0
  1257. data/test/regression/xlsx_files/chart_column02.xlsx +0 -0
  1258. data/test/regression/xlsx_files/chart_column03.xlsx +0 -0
  1259. data/test/regression/xlsx_files/chart_column04.xlsx +0 -0
  1260. data/test/regression/xlsx_files/chart_column05.xlsx +0 -0
  1261. data/test/regression/xlsx_files/chart_column06.xlsx +0 -0
  1262. data/test/regression/xlsx_files/chart_column07.xlsx +0 -0
  1263. data/test/regression/xlsx_files/chart_column08.xlsx +0 -0
  1264. data/test/regression/xlsx_files/chart_column09.xlsx +0 -0
  1265. data/test/regression/xlsx_files/chart_column10.xlsx +0 -0
  1266. data/test/regression/xlsx_files/chart_column11.xlsx +0 -0
  1267. data/test/regression/xlsx_files/chart_column12.xlsx +0 -0
  1268. data/test/regression/xlsx_files/chart_combined01.xlsx +0 -0
  1269. data/test/regression/xlsx_files/chart_combined02.xlsx +0 -0
  1270. data/test/regression/xlsx_files/chart_combined03.xlsx +0 -0
  1271. data/test/regression/xlsx_files/chart_combined04.xlsx +0 -0
  1272. data/test/regression/xlsx_files/chart_combined05.xlsx +0 -0
  1273. data/test/regression/xlsx_files/chart_combined06.xlsx +0 -0
  1274. data/test/regression/xlsx_files/chart_combined07.xlsx +0 -0
  1275. data/test/regression/xlsx_files/chart_combined08.xlsx +0 -0
  1276. data/test/regression/xlsx_files/chart_combined09.xlsx +0 -0
  1277. data/test/regression/xlsx_files/chart_combined10.xlsx +0 -0
  1278. data/test/regression/xlsx_files/chart_combined11.xlsx +0 -0
  1279. data/test/regression/xlsx_files/chart_crossing01.xlsx +0 -0
  1280. data/test/regression/xlsx_files/chart_crossing02.xlsx +0 -0
  1281. data/test/regression/xlsx_files/chart_crossing03.xlsx +0 -0
  1282. data/test/regression/xlsx_files/chart_crossing04.xlsx +0 -0
  1283. data/test/regression/xlsx_files/chart_crossing05.xlsx +0 -0
  1284. data/test/regression/xlsx_files/chart_crossing06.xlsx +0 -0
  1285. data/test/regression/xlsx_files/chart_data_labels01.xlsx +0 -0
  1286. data/test/regression/xlsx_files/chart_data_labels02.xlsx +0 -0
  1287. data/test/regression/xlsx_files/chart_data_labels03.xlsx +0 -0
  1288. data/test/regression/xlsx_files/chart_data_labels04.xlsx +0 -0
  1289. data/test/regression/xlsx_files/chart_data_labels05.xlsx +0 -0
  1290. data/test/regression/xlsx_files/chart_data_labels06.xlsx +0 -0
  1291. data/test/regression/xlsx_files/chart_data_labels07.xlsx +0 -0
  1292. data/test/regression/xlsx_files/chart_data_labels08.xlsx +0 -0
  1293. data/test/regression/xlsx_files/chart_data_labels09.xlsx +0 -0
  1294. data/test/regression/xlsx_files/chart_data_labels10.xlsx +0 -0
  1295. data/test/regression/xlsx_files/chart_data_labels11.xlsx +0 -0
  1296. data/test/regression/xlsx_files/chart_data_labels12.xlsx +0 -0
  1297. data/test/regression/xlsx_files/chart_data_labels13.xlsx +0 -0
  1298. data/test/regression/xlsx_files/chart_data_labels14.xlsx +0 -0
  1299. data/test/regression/xlsx_files/chart_data_labels15.xlsx +0 -0
  1300. data/test/regression/xlsx_files/chart_data_labels16.xlsx +0 -0
  1301. data/test/regression/xlsx_files/chart_data_labels17.xlsx +0 -0
  1302. data/test/regression/xlsx_files/chart_data_labels18.xlsx +0 -0
  1303. data/test/regression/xlsx_files/chart_data_labels19.xlsx +0 -0
  1304. data/test/regression/xlsx_files/chart_data_labels20.xlsx +0 -0
  1305. data/test/regression/xlsx_files/chart_data_labels21.xlsx +0 -0
  1306. data/test/regression/xlsx_files/chart_data_labels22.xlsx +0 -0
  1307. data/test/regression/xlsx_files/chart_data_labels23.xlsx +0 -0
  1308. data/test/regression/xlsx_files/chart_data_labels24.xlsx +0 -0
  1309. data/test/regression/xlsx_files/chart_data_labels25.xlsx +0 -0
  1310. data/test/regression/xlsx_files/chart_data_labels26.xlsx +0 -0
  1311. data/test/regression/xlsx_files/chart_data_labels27.xlsx +0 -0
  1312. data/test/regression/xlsx_files/chart_data_labels28.xlsx +0 -0
  1313. data/test/regression/xlsx_files/chart_data_labels29.xlsx +0 -0
  1314. data/test/regression/xlsx_files/chart_data_labels30.xlsx +0 -0
  1315. data/test/regression/xlsx_files/chart_data_labels31.xlsx +0 -0
  1316. data/test/regression/xlsx_files/chart_data_labels32.xlsx +0 -0
  1317. data/test/regression/xlsx_files/chart_data_labels33.xlsx +0 -0
  1318. data/test/regression/xlsx_files/chart_data_labels34.xlsx +0 -0
  1319. data/test/regression/xlsx_files/chart_data_labels35.xlsx +0 -0
  1320. data/test/regression/xlsx_files/chart_data_labels36.xlsx +0 -0
  1321. data/test/regression/xlsx_files/chart_data_labels37.xlsx +0 -0
  1322. data/test/regression/xlsx_files/chart_data_labels38.xlsx +0 -0
  1323. data/test/regression/xlsx_files/chart_data_labels39.xlsx +0 -0
  1324. data/test/regression/xlsx_files/chart_data_labels40.xlsx +0 -0
  1325. data/test/regression/xlsx_files/chart_data_labels41.xlsx +0 -0
  1326. data/test/regression/xlsx_files/chart_data_labels42.xlsx +0 -0
  1327. data/test/regression/xlsx_files/chart_data_labels43.xlsx +0 -0
  1328. data/test/regression/xlsx_files/chart_data_labels44.xlsx +0 -0
  1329. data/test/regression/xlsx_files/chart_data_labels45.xlsx +0 -0
  1330. data/test/regression/xlsx_files/chart_data_labels46.xlsx +0 -0
  1331. data/test/regression/xlsx_files/chart_data_labels47.xlsx +0 -0
  1332. data/test/regression/xlsx_files/chart_data_labels48.xlsx +0 -0
  1333. data/test/regression/xlsx_files/chart_data_labels49.xlsx +0 -0
  1334. data/test/regression/xlsx_files/chart_data_labels50.xlsx +0 -0
  1335. data/test/regression/xlsx_files/chart_date01.xlsx +0 -0
  1336. data/test/regression/xlsx_files/chart_date02.xlsx +0 -0
  1337. data/test/regression/xlsx_files/chart_date03.xlsx +0 -0
  1338. data/test/regression/xlsx_files/chart_date04.xlsx +0 -0
  1339. data/test/regression/xlsx_files/chart_date05.xlsx +0 -0
  1340. data/test/regression/xlsx_files/chart_display_units01.xlsx +0 -0
  1341. data/test/regression/xlsx_files/chart_display_units02.xlsx +0 -0
  1342. data/test/regression/xlsx_files/chart_display_units03.xlsx +0 -0
  1343. data/test/regression/xlsx_files/chart_display_units04.xlsx +0 -0
  1344. data/test/regression/xlsx_files/chart_display_units05.xlsx +0 -0
  1345. data/test/regression/xlsx_files/chart_display_units06.xlsx +0 -0
  1346. data/test/regression/xlsx_files/chart_display_units07.xlsx +0 -0
  1347. data/test/regression/xlsx_files/chart_display_units08.xlsx +0 -0
  1348. data/test/regression/xlsx_files/chart_display_units09.xlsx +0 -0
  1349. data/test/regression/xlsx_files/chart_display_units10.xlsx +0 -0
  1350. data/test/regression/xlsx_files/chart_display_units11.xlsx +0 -0
  1351. data/test/regression/xlsx_files/chart_display_units12.xlsx +0 -0
  1352. data/test/regression/xlsx_files/chart_doughnut01.xlsx +0 -0
  1353. data/test/regression/xlsx_files/chart_doughnut02.xlsx +0 -0
  1354. data/test/regression/xlsx_files/chart_doughnut03.xlsx +0 -0
  1355. data/test/regression/xlsx_files/chart_doughnut04.xlsx +0 -0
  1356. data/test/regression/xlsx_files/chart_doughnut05.xlsx +0 -0
  1357. data/test/regression/xlsx_files/chart_doughnut06.xlsx +0 -0
  1358. data/test/regression/xlsx_files/chart_doughnut07.xlsx +0 -0
  1359. data/test/regression/xlsx_files/chart_drop_lines01.xlsx +0 -0
  1360. data/test/regression/xlsx_files/chart_drop_lines02.xlsx +0 -0
  1361. data/test/regression/xlsx_files/chart_drop_lines03.xlsx +0 -0
  1362. data/test/regression/xlsx_files/chart_drop_lines04.xlsx +0 -0
  1363. data/test/regression/xlsx_files/chart_errorbars01.xlsx +0 -0
  1364. data/test/regression/xlsx_files/chart_errorbars02.xlsx +0 -0
  1365. data/test/regression/xlsx_files/chart_errorbars03.xlsx +0 -0
  1366. data/test/regression/xlsx_files/chart_errorbars04.xlsx +0 -0
  1367. data/test/regression/xlsx_files/chart_errorbars05.xlsx +0 -0
  1368. data/test/regression/xlsx_files/chart_errorbars06.xlsx +0 -0
  1369. data/test/regression/xlsx_files/chart_errorbars07.xlsx +0 -0
  1370. data/test/regression/xlsx_files/chart_errorbars08.xlsx +0 -0
  1371. data/test/regression/xlsx_files/chart_errorbars09.xlsx +0 -0
  1372. data/test/regression/xlsx_files/chart_errorbars10.xlsx +0 -0
  1373. data/test/regression/xlsx_files/chart_font01.xlsx +0 -0
  1374. data/test/regression/xlsx_files/chart_font02.xlsx +0 -0
  1375. data/test/regression/xlsx_files/chart_font03.xlsx +0 -0
  1376. data/test/regression/xlsx_files/chart_font04.xlsx +0 -0
  1377. data/test/regression/xlsx_files/chart_font05.xlsx +0 -0
  1378. data/test/regression/xlsx_files/chart_font06.xlsx +0 -0
  1379. data/test/regression/xlsx_files/chart_font07.xlsx +0 -0
  1380. data/test/regression/xlsx_files/chart_font08.xlsx +0 -0
  1381. data/test/regression/xlsx_files/chart_font09.xlsx +0 -0
  1382. data/test/regression/xlsx_files/chart_format01.xlsx +0 -0
  1383. data/test/regression/xlsx_files/chart_format02.xlsx +0 -0
  1384. data/test/regression/xlsx_files/chart_format03.xlsx +0 -0
  1385. data/test/regression/xlsx_files/chart_format04.xlsx +0 -0
  1386. data/test/regression/xlsx_files/chart_format05.xlsx +0 -0
  1387. data/test/regression/xlsx_files/chart_format06.xlsx +0 -0
  1388. data/test/regression/xlsx_files/chart_format07.xlsx +0 -0
  1389. data/test/regression/xlsx_files/chart_format08.xlsx +0 -0
  1390. data/test/regression/xlsx_files/chart_format09.xlsx +0 -0
  1391. data/test/regression/xlsx_files/chart_format10.xlsx +0 -0
  1392. data/test/regression/xlsx_files/chart_format11.xlsx +0 -0
  1393. data/test/regression/xlsx_files/chart_format12.xlsx +0 -0
  1394. data/test/regression/xlsx_files/chart_format13.xlsx +0 -0
  1395. data/test/regression/xlsx_files/chart_format14.xlsx +0 -0
  1396. data/test/regression/xlsx_files/chart_format15.xlsx +0 -0
  1397. data/test/regression/xlsx_files/chart_format16.xlsx +0 -0
  1398. data/test/regression/xlsx_files/chart_format17.xlsx +0 -0
  1399. data/test/regression/xlsx_files/chart_format18.xlsx +0 -0
  1400. data/test/regression/xlsx_files/chart_format19.xlsx +0 -0
  1401. data/test/regression/xlsx_files/chart_format20.xlsx +0 -0
  1402. data/test/regression/xlsx_files/chart_format21.xlsx +0 -0
  1403. data/test/regression/xlsx_files/chart_format22.xlsx +0 -0
  1404. data/test/regression/xlsx_files/chart_format23.xlsx +0 -0
  1405. data/test/regression/xlsx_files/chart_format24.xlsx +0 -0
  1406. data/test/regression/xlsx_files/chart_format25.xlsx +0 -0
  1407. data/test/regression/xlsx_files/chart_format26.xlsx +0 -0
  1408. data/test/regression/xlsx_files/chart_format27.xlsx +0 -0
  1409. data/test/regression/xlsx_files/chart_format28.xlsx +0 -0
  1410. data/test/regression/xlsx_files/chart_format29.xlsx +0 -0
  1411. data/test/regression/xlsx_files/chart_format30.xlsx +0 -0
  1412. data/test/regression/xlsx_files/chart_format31.xlsx +0 -0
  1413. data/test/regression/xlsx_files/chart_gap01.xlsx +0 -0
  1414. data/test/regression/xlsx_files/chart_gap02.xlsx +0 -0
  1415. data/test/regression/xlsx_files/chart_gap03.xlsx +0 -0
  1416. data/test/regression/xlsx_files/chart_gap04.xlsx +0 -0
  1417. data/test/regression/xlsx_files/chart_gap05.xlsx +0 -0
  1418. data/test/regression/xlsx_files/chart_gradient01.xlsx +0 -0
  1419. data/test/regression/xlsx_files/chart_gradient02.xlsx +0 -0
  1420. data/test/regression/xlsx_files/chart_gradient03.xlsx +0 -0
  1421. data/test/regression/xlsx_files/chart_gradient04.xlsx +0 -0
  1422. data/test/regression/xlsx_files/chart_gradient05.xlsx +0 -0
  1423. data/test/regression/xlsx_files/chart_gradient06.xlsx +0 -0
  1424. data/test/regression/xlsx_files/chart_gradient07.xlsx +0 -0
  1425. data/test/regression/xlsx_files/chart_gradient08.xlsx +0 -0
  1426. data/test/regression/xlsx_files/chart_gradient09.xlsx +0 -0
  1427. data/test/regression/xlsx_files/chart_gradient10.xlsx +0 -0
  1428. data/test/regression/xlsx_files/chart_gradient11.xlsx +0 -0
  1429. data/test/regression/xlsx_files/chart_gradient12.xlsx +0 -0
  1430. data/test/regression/xlsx_files/chart_gradient13.xlsx +0 -0
  1431. data/test/regression/xlsx_files/chart_gridlines01.xlsx +0 -0
  1432. data/test/regression/xlsx_files/chart_gridlines02.xlsx +0 -0
  1433. data/test/regression/xlsx_files/chart_gridlines03.xlsx +0 -0
  1434. data/test/regression/xlsx_files/chart_gridlines04.xlsx +0 -0
  1435. data/test/regression/xlsx_files/chart_gridlines05.xlsx +0 -0
  1436. data/test/regression/xlsx_files/chart_gridlines06.xlsx +0 -0
  1437. data/test/regression/xlsx_files/chart_gridlines07.xlsx +0 -0
  1438. data/test/regression/xlsx_files/chart_gridlines08.xlsx +0 -0
  1439. data/test/regression/xlsx_files/chart_gridlines09.xlsx +0 -0
  1440. data/test/regression/xlsx_files/chart_layout01.xlsx +0 -0
  1441. data/test/regression/xlsx_files/chart_layout02.xlsx +0 -0
  1442. data/test/regression/xlsx_files/chart_layout03.xlsx +0 -0
  1443. data/test/regression/xlsx_files/chart_layout04.xlsx +0 -0
  1444. data/test/regression/xlsx_files/chart_layout05.xlsx +0 -0
  1445. data/test/regression/xlsx_files/chart_layout06.xlsx +0 -0
  1446. data/test/regression/xlsx_files/chart_layout07.xlsx +0 -0
  1447. data/test/regression/xlsx_files/chart_layout08.xlsx +0 -0
  1448. data/test/regression/xlsx_files/chart_legend01.xlsx +0 -0
  1449. data/test/regression/xlsx_files/chart_legend03.xlsx +0 -0
  1450. data/test/regression/xlsx_files/chart_legend04.xlsx +0 -0
  1451. data/test/regression/xlsx_files/chart_legend05.xlsx +0 -0
  1452. data/test/regression/xlsx_files/chart_legend06.xlsx +0 -0
  1453. data/test/regression/xlsx_files/chart_legend07.xlsx +0 -0
  1454. data/test/regression/xlsx_files/chart_line01.xlsx +0 -0
  1455. data/test/regression/xlsx_files/chart_line02.xlsx +0 -0
  1456. data/test/regression/xlsx_files/chart_line03.xlsx +0 -0
  1457. data/test/regression/xlsx_files/chart_line04.xlsx +0 -0
  1458. data/test/regression/xlsx_files/chart_line05.xlsx +0 -0
  1459. data/test/regression/xlsx_files/chart_line06.xlsx +0 -0
  1460. data/test/regression/xlsx_files/chart_name01.xlsx +0 -0
  1461. data/test/regression/xlsx_files/chart_name02.xlsx +0 -0
  1462. data/test/regression/xlsx_files/chart_name03.xlsx +0 -0
  1463. data/test/regression/xlsx_files/chart_order01.xlsx +0 -0
  1464. data/test/regression/xlsx_files/chart_order03.xlsx +0 -0
  1465. data/test/regression/xlsx_files/chart_pattern01.xlsx +0 -0
  1466. data/test/regression/xlsx_files/chart_pattern02.xlsx +0 -0
  1467. data/test/regression/xlsx_files/chart_pattern03.xlsx +0 -0
  1468. data/test/regression/xlsx_files/chart_pattern04.xlsx +0 -0
  1469. data/test/regression/xlsx_files/chart_pattern05.xlsx +0 -0
  1470. data/test/regression/xlsx_files/chart_pattern06.xlsx +0 -0
  1471. data/test/regression/xlsx_files/chart_pattern07.xlsx +0 -0
  1472. data/test/regression/xlsx_files/chart_pattern08.xlsx +0 -0
  1473. data/test/regression/xlsx_files/chart_pattern09.xlsx +0 -0
  1474. data/test/regression/xlsx_files/chart_pattern10.xlsx +0 -0
  1475. data/test/regression/xlsx_files/chart_pie01.xlsx +0 -0
  1476. data/test/regression/xlsx_files/chart_pie02.xlsx +0 -0
  1477. data/test/regression/xlsx_files/chart_pie03.xlsx +0 -0
  1478. data/test/regression/xlsx_files/chart_pie04.xlsx +0 -0
  1479. data/test/regression/xlsx_files/chart_pie05.xlsx +0 -0
  1480. data/test/regression/xlsx_files/chart_points01.xlsx +0 -0
  1481. data/test/regression/xlsx_files/chart_points02.xlsx +0 -0
  1482. data/test/regression/xlsx_files/chart_points03.xlsx +0 -0
  1483. data/test/regression/xlsx_files/chart_points04.xlsx +0 -0
  1484. data/test/regression/xlsx_files/chart_points05.xlsx +0 -0
  1485. data/test/regression/xlsx_files/chart_points06.xlsx +0 -0
  1486. data/test/regression/xlsx_files/chart_radar01.xlsx +0 -0
  1487. data/test/regression/xlsx_files/chart_radar02.xlsx +0 -0
  1488. data/test/regression/xlsx_files/chart_radar03.xlsx +0 -0
  1489. data/test/regression/xlsx_files/chart_scatter01.xlsx +0 -0
  1490. data/test/regression/xlsx_files/chart_scatter02.xlsx +0 -0
  1491. data/test/regression/xlsx_files/chart_scatter03.xlsx +0 -0
  1492. data/test/regression/xlsx_files/chart_scatter04.xlsx +0 -0
  1493. data/test/regression/xlsx_files/chart_scatter05.xlsx +0 -0
  1494. data/test/regression/xlsx_files/chart_scatter06.xlsx +0 -0
  1495. data/test/regression/xlsx_files/chart_scatter07.xlsx +0 -0
  1496. data/test/regression/xlsx_files/chart_scatter08.xlsx +0 -0
  1497. data/test/regression/xlsx_files/chart_scatter09.xlsx +0 -0
  1498. data/test/regression/xlsx_files/chart_scatter10.xlsx +0 -0
  1499. data/test/regression/xlsx_files/chart_scatter11.xlsx +0 -0
  1500. data/test/regression/xlsx_files/chart_scatter12.xlsx +0 -0
  1501. data/test/regression/xlsx_files/chart_scatter14.xlsx +0 -0
  1502. data/test/regression/xlsx_files/chart_scatter15.xlsx +0 -0
  1503. data/test/regression/xlsx_files/chart_size01.xlsx +0 -0
  1504. data/test/regression/xlsx_files/chart_size04.xlsx +0 -0
  1505. data/test/regression/xlsx_files/chart_sparse01.xlsx +0 -0
  1506. data/test/regression/xlsx_files/chart_stock01.xlsx +0 -0
  1507. data/test/regression/xlsx_files/chart_stock02.xlsx +0 -0
  1508. data/test/regression/xlsx_files/chart_str01.xlsx +0 -0
  1509. data/test/regression/xlsx_files/chart_str02.xlsx +0 -0
  1510. data/test/regression/xlsx_files/chart_table01.xlsx +0 -0
  1511. data/test/regression/xlsx_files/chart_table02.xlsx +0 -0
  1512. data/test/regression/xlsx_files/chart_table03.xlsx +0 -0
  1513. data/test/regression/xlsx_files/chart_title01.xlsx +0 -0
  1514. data/test/regression/xlsx_files/chart_title02.xlsx +0 -0
  1515. data/test/regression/xlsx_files/chartsheet01.xlsx +0 -0
  1516. data/test/regression/xlsx_files/chartsheet02.xlsx +0 -0
  1517. data/test/regression/xlsx_files/chartsheet03.xlsx +0 -0
  1518. data/test/regression/xlsx_files/chartsheet04.xlsx +0 -0
  1519. data/test/regression/xlsx_files/chartsheet05.xlsx +0 -0
  1520. data/test/regression/xlsx_files/chartsheet06.xlsx +0 -0
  1521. data/test/regression/xlsx_files/chartsheet07.xlsx +0 -0
  1522. data/test/regression/xlsx_files/chartsheet08.xlsx +0 -0
  1523. data/test/regression/xlsx_files/chartsheet09.xlsx +0 -0
  1524. data/test/regression/xlsx_files/comment01.xlsx +0 -0
  1525. data/test/regression/xlsx_files/comment02.xlsx +0 -0
  1526. data/test/regression/xlsx_files/comment03.xlsx +0 -0
  1527. data/test/regression/xlsx_files/comment04.xlsx +0 -0
  1528. data/test/regression/xlsx_files/comment05.xlsx +0 -0
  1529. data/test/regression/xlsx_files/comment06.xlsx +0 -0
  1530. data/test/regression/xlsx_files/comment07.xlsx +0 -0
  1531. data/test/regression/xlsx_files/comment08.xlsx +0 -0
  1532. data/test/regression/xlsx_files/comment09.xlsx +0 -0
  1533. data/test/regression/xlsx_files/comment10.xlsx +0 -0
  1534. data/test/regression/xlsx_files/comment11.xlsx +0 -0
  1535. data/test/regression/xlsx_files/comment12.xlsx +0 -0
  1536. data/test/regression/xlsx_files/comment13.xlsx +0 -0
  1537. data/test/regression/xlsx_files/comment14.xlsx +0 -0
  1538. data/test/regression/xlsx_files/comment15.xlsx +0 -0
  1539. data/test/regression/xlsx_files/comment16.xlsx +0 -0
  1540. data/test/regression/xlsx_files/cond_format01.xlsx +0 -0
  1541. data/test/regression/xlsx_files/cond_format02.xlsx +0 -0
  1542. data/test/regression/xlsx_files/cond_format03.xlsx +0 -0
  1543. data/test/regression/xlsx_files/cond_format04.xlsx +0 -0
  1544. data/test/regression/xlsx_files/cond_format05.xlsx +0 -0
  1545. data/test/regression/xlsx_files/cond_format06.xlsx +0 -0
  1546. data/test/regression/xlsx_files/cond_format07.xlsx +0 -0
  1547. data/test/regression/xlsx_files/cond_format08.xlsx +0 -0
  1548. data/test/regression/xlsx_files/cond_format10.xlsx +0 -0
  1549. data/test/regression/xlsx_files/cond_format11.xlsx +0 -0
  1550. data/test/regression/xlsx_files/cond_format12.xlsx +0 -0
  1551. data/test/regression/xlsx_files/cond_format14.xlsx +0 -0
  1552. data/test/regression/xlsx_files/cond_format15.xlsx +0 -0
  1553. data/test/regression/xlsx_files/cond_format16.xlsx +0 -0
  1554. data/test/regression/xlsx_files/cond_format17.xlsx +0 -0
  1555. data/test/regression/xlsx_files/cond_format18.xlsx +0 -0
  1556. data/test/regression/xlsx_files/cond_format19.xlsx +0 -0
  1557. data/test/regression/xlsx_files/cond_format20.xlsx +0 -0
  1558. data/test/regression/xlsx_files/custom_colors01.xlsx +0 -0
  1559. data/test/regression/xlsx_files/data_validation01.xlsx +0 -0
  1560. data/test/regression/xlsx_files/data_validation02.xlsx +0 -0
  1561. data/test/regression/xlsx_files/data_validation03.xlsx +0 -0
  1562. data/test/regression/xlsx_files/data_validation08.xlsx +0 -0
  1563. data/test/regression/xlsx_files/date_1904_01.xlsx +0 -0
  1564. data/test/regression/xlsx_files/date_1904_02.xlsx +0 -0
  1565. data/test/regression/xlsx_files/date_examples01.xlsx +0 -0
  1566. data/test/regression/xlsx_files/default_format01.xlsx +0 -0
  1567. data/test/regression/xlsx_files/default_row01.xlsx +0 -0
  1568. data/test/regression/xlsx_files/default_row02.xlsx +0 -0
  1569. data/test/regression/xlsx_files/default_row03.xlsx +0 -0
  1570. data/test/regression/xlsx_files/default_row04.xlsx +0 -0
  1571. data/test/regression/xlsx_files/default_row05.xlsx +0 -0
  1572. data/test/regression/xlsx_files/defined_name01.xlsx +0 -0
  1573. data/test/regression/xlsx_files/defined_name02.xlsx +0 -0
  1574. data/test/regression/xlsx_files/defined_name03.xlsx +0 -0
  1575. data/test/regression/xlsx_files/defined_name04.xlsx +0 -0
  1576. data/test/regression/xlsx_files/dynamic_array01.xlsx +0 -0
  1577. data/test/regression/xlsx_files/escapes01.xlsx +0 -0
  1578. data/test/regression/xlsx_files/escapes02.xlsx +0 -0
  1579. data/test/regression/xlsx_files/escapes03.xlsx +0 -0
  1580. data/test/regression/xlsx_files/escapes04.xlsx +0 -0
  1581. data/test/regression/xlsx_files/escapes05.xlsx +0 -0
  1582. data/test/regression/xlsx_files/escapes06.xlsx +0 -0
  1583. data/test/regression/xlsx_files/escapes07.xlsx +0 -0
  1584. data/test/regression/xlsx_files/escapes08.xlsx +0 -0
  1585. data/test/regression/xlsx_files/excel2003_style01.xlsx +0 -0
  1586. data/test/regression/xlsx_files/excel2003_style02.xlsx +0 -0
  1587. data/test/regression/xlsx_files/excel2003_style03.xlsx +0 -0
  1588. data/test/regression/xlsx_files/excel2003_style04.xlsx +0 -0
  1589. data/test/regression/xlsx_files/excel2003_style05.xlsx +0 -0
  1590. data/test/regression/xlsx_files/excel2003_style06.xlsx +0 -0
  1591. data/test/regression/xlsx_files/excel2003_style07.xlsx +0 -0
  1592. data/test/regression/xlsx_files/excel2003_style08.xlsx +0 -0
  1593. data/test/regression/xlsx_files/filehandle01.xlsx +0 -0
  1594. data/test/regression/xlsx_files/firstsheet01.xlsx +0 -0
  1595. data/test/regression/xlsx_files/fit_to_pages01.xlsx +0 -0
  1596. data/test/regression/xlsx_files/fit_to_pages02.xlsx +0 -0
  1597. data/test/regression/xlsx_files/fit_to_pages03.xlsx +0 -0
  1598. data/test/regression/xlsx_files/fit_to_pages04.xlsx +0 -0
  1599. data/test/regression/xlsx_files/fit_to_pages05.xlsx +0 -0
  1600. data/test/regression/xlsx_files/format01.xlsx +0 -0
  1601. data/test/regression/xlsx_files/format02.xlsx +0 -0
  1602. data/test/regression/xlsx_files/format03.xlsx +0 -0
  1603. data/test/regression/xlsx_files/format04.xlsx +0 -0
  1604. data/test/regression/xlsx_files/format05.xlsx +0 -0
  1605. data/test/regression/xlsx_files/format11.xlsx +0 -0
  1606. data/test/regression/xlsx_files/format12.xlsx +0 -0
  1607. data/test/regression/xlsx_files/format13.xlsx +0 -0
  1608. data/test/regression/xlsx_files/format14.xlsx +0 -0
  1609. data/test/regression/xlsx_files/format15.xlsx +0 -0
  1610. data/test/regression/xlsx_files/format16.xlsx +0 -0
  1611. data/test/regression/xlsx_files/format17.xlsx +0 -0
  1612. data/test/regression/xlsx_files/formula_results01.xlsx +0 -0
  1613. data/test/regression/xlsx_files/gridlines01.xlsx +0 -0
  1614. data/test/regression/xlsx_files/header01.xlsx +0 -0
  1615. data/test/regression/xlsx_files/header02.xlsx +0 -0
  1616. data/test/regression/xlsx_files/header03.xlsx +0 -0
  1617. data/test/regression/xlsx_files/header04.xlsx +0 -0
  1618. data/test/regression/xlsx_files/header_image01.xlsx +0 -0
  1619. data/test/regression/xlsx_files/header_image02.xlsx +0 -0
  1620. data/test/regression/xlsx_files/header_image03.xlsx +0 -0
  1621. data/test/regression/xlsx_files/header_image04.xlsx +0 -0
  1622. data/test/regression/xlsx_files/header_image05.xlsx +0 -0
  1623. data/test/regression/xlsx_files/header_image06.xlsx +0 -0
  1624. data/test/regression/xlsx_files/header_image07.xlsx +0 -0
  1625. data/test/regression/xlsx_files/header_image08.xlsx +0 -0
  1626. data/test/regression/xlsx_files/header_image09.xlsx +0 -0
  1627. data/test/regression/xlsx_files/header_image10.xlsx +0 -0
  1628. data/test/regression/xlsx_files/header_image11.xlsx +0 -0
  1629. data/test/regression/xlsx_files/header_image12.xlsx +0 -0
  1630. data/test/regression/xlsx_files/header_image13.xlsx +0 -0
  1631. data/test/regression/xlsx_files/header_image14.xlsx +0 -0
  1632. data/test/regression/xlsx_files/header_image15.xlsx +0 -0
  1633. data/test/regression/xlsx_files/header_image16.xlsx +0 -0
  1634. data/test/regression/xlsx_files/header_image17.xlsx +0 -0
  1635. data/test/regression/xlsx_files/header_image18.xlsx +0 -0
  1636. data/test/regression/xlsx_files/header_image19.xlsx +0 -0
  1637. data/test/regression/xlsx_files/hide01.xlsx +0 -0
  1638. data/test/regression/xlsx_files/hyperlink01.xlsx +0 -0
  1639. data/test/regression/xlsx_files/hyperlink02.xlsx +0 -0
  1640. data/test/regression/xlsx_files/hyperlink03.xlsx +0 -0
  1641. data/test/regression/xlsx_files/hyperlink04.xlsx +0 -0
  1642. data/test/regression/xlsx_files/hyperlink05.xlsx +0 -0
  1643. data/test/regression/xlsx_files/hyperlink06.xlsx +0 -0
  1644. data/test/regression/xlsx_files/hyperlink07.xlsx +0 -0
  1645. data/test/regression/xlsx_files/hyperlink08.xlsx +0 -0
  1646. data/test/regression/xlsx_files/hyperlink09.xlsx +0 -0
  1647. data/test/regression/xlsx_files/hyperlink10.xlsx +0 -0
  1648. data/test/regression/xlsx_files/hyperlink11.xlsx +0 -0
  1649. data/test/regression/xlsx_files/hyperlink12.xlsx +0 -0
  1650. data/test/regression/xlsx_files/hyperlink13.xlsx +0 -0
  1651. data/test/regression/xlsx_files/hyperlink14.xlsx +0 -0
  1652. data/test/regression/xlsx_files/hyperlink15.xlsx +0 -0
  1653. data/test/regression/xlsx_files/hyperlink16.xlsx +0 -0
  1654. data/test/regression/xlsx_files/hyperlink17.xlsx +0 -0
  1655. data/test/regression/xlsx_files/hyperlink18.xlsx +0 -0
  1656. data/test/regression/xlsx_files/hyperlink20.xlsx +0 -0
  1657. data/test/regression/xlsx_files/hyperlink21.xlsx +0 -0
  1658. data/test/regression/xlsx_files/hyperlink22.xlsx +0 -0
  1659. data/test/regression/xlsx_files/hyperlink23.xlsx +0 -0
  1660. data/test/regression/xlsx_files/hyperlink24.xlsx +0 -0
  1661. data/test/regression/xlsx_files/hyperlink25.xlsx +0 -0
  1662. data/test/regression/xlsx_files/hyperlink26.xlsx +0 -0
  1663. data/test/regression/xlsx_files/hyperlink27.xlsx +0 -0
  1664. data/test/regression/xlsx_files/hyperlink28.xlsx +0 -0
  1665. data/test/regression/xlsx_files/hyperlink29.xlsx +0 -0
  1666. data/test/regression/xlsx_files/hyperlink30.xlsx +0 -0
  1667. data/test/regression/xlsx_files/hyperlink31.xlsx +0 -0
  1668. data/test/regression/xlsx_files/hyperlink32.xlsx +0 -0
  1669. data/test/regression/xlsx_files/hyperlink33.xlsx +0 -0
  1670. data/test/regression/xlsx_files/hyperlink34.xlsx +0 -0
  1671. data/test/regression/xlsx_files/hyperlink35.xlsx +0 -0
  1672. data/test/regression/xlsx_files/hyperlink36.xlsx +0 -0
  1673. data/test/regression/xlsx_files/hyperlink37.xlsx +0 -0
  1674. data/test/regression/xlsx_files/hyperlink38.xlsx +0 -0
  1675. data/test/regression/xlsx_files/hyperlink39.xlsx +0 -0
  1676. data/test/regression/xlsx_files/hyperlink40.xlsx +0 -0
  1677. data/test/regression/xlsx_files/hyperlink41.xlsx +0 -0
  1678. data/test/regression/xlsx_files/hyperlink42.xlsx +0 -0
  1679. data/test/regression/xlsx_files/hyperlink43.xlsx +0 -0
  1680. data/test/regression/xlsx_files/hyperlink44.xlsx +0 -0
  1681. data/test/regression/xlsx_files/hyperlink45.xlsx +0 -0
  1682. data/test/regression/xlsx_files/hyperlink46.xlsx +0 -0
  1683. data/test/regression/xlsx_files/hyperlink47.xlsx +0 -0
  1684. data/test/regression/xlsx_files/hyperlink48.xlsx +0 -0
  1685. data/test/regression/xlsx_files/hyperlink49.xlsx +0 -0
  1686. data/test/regression/xlsx_files/hyperlink50.xlsx +0 -0
  1687. data/test/regression/xlsx_files/hyperlink51.xlsx +0 -0
  1688. data/test/regression/xlsx_files/ignore_error01.xlsx +0 -0
  1689. data/test/regression/xlsx_files/ignore_error02.xlsx +0 -0
  1690. data/test/regression/xlsx_files/ignore_error03.xlsx +0 -0
  1691. data/test/regression/xlsx_files/ignore_error04.xlsx +0 -0
  1692. data/test/regression/xlsx_files/ignore_error05.xlsx +0 -0
  1693. data/test/regression/xlsx_files/ignore_error06.xlsx +0 -0
  1694. data/test/regression/xlsx_files/image01.xlsx +0 -0
  1695. data/test/regression/xlsx_files/image02.xlsx +0 -0
  1696. data/test/regression/xlsx_files/image03.xlsx +0 -0
  1697. data/test/regression/xlsx_files/image04.xlsx +0 -0
  1698. data/test/regression/xlsx_files/image05.xlsx +0 -0
  1699. data/test/regression/xlsx_files/image06.xlsx +0 -0
  1700. data/test/regression/xlsx_files/image07.xlsx +0 -0
  1701. data/test/regression/xlsx_files/image08.xlsx +0 -0
  1702. data/test/regression/xlsx_files/image09.xlsx +0 -0
  1703. data/test/regression/xlsx_files/image10.xlsx +0 -0
  1704. data/test/regression/xlsx_files/image11.xlsx +0 -0
  1705. data/test/regression/xlsx_files/image12.xlsx +0 -0
  1706. data/test/regression/xlsx_files/image13.xlsx +0 -0
  1707. data/test/regression/xlsx_files/image14.xlsx +0 -0
  1708. data/test/regression/xlsx_files/image15.xlsx +0 -0
  1709. data/test/regression/xlsx_files/image16.xlsx +0 -0
  1710. data/test/regression/xlsx_files/image17.xlsx +0 -0
  1711. data/test/regression/xlsx_files/image18.xlsx +0 -0
  1712. data/test/regression/xlsx_files/image19.xlsx +0 -0
  1713. data/test/regression/xlsx_files/image22.xlsx +0 -0
  1714. data/test/regression/xlsx_files/image23.xlsx +0 -0
  1715. data/test/regression/xlsx_files/image24.xlsx +0 -0
  1716. data/test/regression/xlsx_files/image25.xlsx +0 -0
  1717. data/test/regression/xlsx_files/image26.xlsx +0 -0
  1718. data/test/regression/xlsx_files/image27.xlsx +0 -0
  1719. data/test/regression/xlsx_files/image28.xlsx +0 -0
  1720. data/test/regression/xlsx_files/image29.xlsx +0 -0
  1721. data/test/regression/xlsx_files/image30.xlsx +0 -0
  1722. data/test/regression/xlsx_files/image31.xlsx +0 -0
  1723. data/test/regression/xlsx_files/image32.xlsx +0 -0
  1724. data/test/regression/xlsx_files/image33.xlsx +0 -0
  1725. data/test/regression/xlsx_files/image35.xlsx +0 -0
  1726. data/test/regression/xlsx_files/image36.xlsx +0 -0
  1727. data/test/regression/xlsx_files/image44.xlsx +0 -0
  1728. data/test/regression/xlsx_files/image45.xlsx +0 -0
  1729. data/test/regression/xlsx_files/image46.xlsx +0 -0
  1730. data/test/regression/xlsx_files/image47.xlsx +0 -0
  1731. data/test/regression/xlsx_files/image48.xlsx +0 -0
  1732. data/test/regression/xlsx_files/image49.xlsx +0 -0
  1733. data/test/regression/xlsx_files/image50.xlsx +0 -0
  1734. data/test/regression/xlsx_files/image51.xlsx +0 -0
  1735. data/test/regression/xlsx_files/image52.xlsx +0 -0
  1736. data/test/regression/xlsx_files/image53.xlsx +0 -0
  1737. data/test/regression/xlsx_files/image54.xlsx +0 -0
  1738. data/test/regression/xlsx_files/image55.xlsx +0 -0
  1739. data/test/regression/xlsx_files/image56.xlsx +0 -0
  1740. data/test/regression/xlsx_files/image57.xlsx +0 -0
  1741. data/test/regression/xlsx_files/landscape01.xlsx +0 -0
  1742. data/test/regression/xlsx_files/macro01.xlsm +0 -0
  1743. data/test/regression/xlsx_files/merge_cells01.xlsx +0 -0
  1744. data/test/regression/xlsx_files/merge_range01.xlsx +0 -0
  1745. data/test/regression/xlsx_files/merge_range02.xlsx +0 -0
  1746. data/test/regression/xlsx_files/merge_range03.xlsx +0 -0
  1747. data/test/regression/xlsx_files/merge_range04.xlsx +0 -0
  1748. data/test/regression/xlsx_files/merge_range05.xlsx +0 -0
  1749. data/test/regression/xlsx_files/object_position01.xlsx +0 -0
  1750. data/test/regression/xlsx_files/object_position02.xlsx +0 -0
  1751. data/test/regression/xlsx_files/object_position03.xlsx +0 -0
  1752. data/test/regression/xlsx_files/object_position04.xlsx +0 -0
  1753. data/test/regression/xlsx_files/object_position06.xlsx +0 -0
  1754. data/test/regression/xlsx_files/object_position07.xlsx +0 -0
  1755. data/test/regression/xlsx_files/object_position08.xlsx +0 -0
  1756. data/test/regression/xlsx_files/object_position09.xlsx +0 -0
  1757. data/test/regression/xlsx_files/object_position10.xlsx +0 -0
  1758. data/test/regression/xlsx_files/object_position12.xlsx +0 -0
  1759. data/test/regression/xlsx_files/object_position13.xlsx +0 -0
  1760. data/test/regression/xlsx_files/object_position14.xlsx +0 -0
  1761. data/test/regression/xlsx_files/object_position15.xlsx +0 -0
  1762. data/test/regression/xlsx_files/object_position16.xlsx +0 -0
  1763. data/test/regression/xlsx_files/object_position17.xlsx +0 -0
  1764. data/test/regression/xlsx_files/object_position18.xlsx +0 -0
  1765. data/test/regression/xlsx_files/object_position19.xlsx +0 -0
  1766. data/test/regression/xlsx_files/object_position20.xlsx +0 -0
  1767. data/test/regression/xlsx_files/outline01.xlsx +0 -0
  1768. data/test/regression/xlsx_files/outline02.xlsx +0 -0
  1769. data/test/regression/xlsx_files/outline03.xlsx +0 -0
  1770. data/test/regression/xlsx_files/outline04.xlsx +0 -0
  1771. data/test/regression/xlsx_files/outline05.xlsx +0 -0
  1772. data/test/regression/xlsx_files/outline06.xlsx +0 -0
  1773. data/test/regression/xlsx_files/page_breaks01.xlsx +0 -0
  1774. data/test/regression/xlsx_files/page_breaks02.xlsx +0 -0
  1775. data/test/regression/xlsx_files/page_breaks03.xlsx +0 -0
  1776. data/test/regression/xlsx_files/page_breaks04.xlsx +0 -0
  1777. data/test/regression/xlsx_files/page_breaks05.xlsx +0 -0
  1778. data/test/regression/xlsx_files/page_breaks06.xlsx +0 -0
  1779. data/test/regression/xlsx_files/page_view01.xlsx +0 -0
  1780. data/test/regression/xlsx_files/panes01.xlsx +0 -0
  1781. data/test/regression/xlsx_files/print_across01.xlsx +0 -0
  1782. data/test/regression/xlsx_files/print_area01.xlsx +0 -0
  1783. data/test/regression/xlsx_files/print_area02.xlsx +0 -0
  1784. data/test/regression/xlsx_files/print_area03.xlsx +0 -0
  1785. data/test/regression/xlsx_files/print_area04.xlsx +0 -0
  1786. data/test/regression/xlsx_files/print_area05.xlsx +0 -0
  1787. data/test/regression/xlsx_files/print_area06.xlsx +0 -0
  1788. data/test/regression/xlsx_files/print_area07.xlsx +0 -0
  1789. data/test/regression/xlsx_files/print_options01.xlsx +0 -0
  1790. data/test/regression/xlsx_files/print_options02.xlsx +0 -0
  1791. data/test/regression/xlsx_files/print_options03.xlsx +0 -0
  1792. data/test/regression/xlsx_files/print_options04.xlsx +0 -0
  1793. data/test/regression/xlsx_files/print_options05.xlsx +0 -0
  1794. data/test/regression/xlsx_files/print_options06.xlsx +0 -0
  1795. data/test/regression/xlsx_files/print_options07.xlsx +0 -0
  1796. data/test/regression/xlsx_files/print_scale01.xlsx +0 -0
  1797. data/test/regression/xlsx_files/print_scale02.xlsx +0 -0
  1798. data/test/regression/xlsx_files/properties01.xlsx +0 -0
  1799. data/test/regression/xlsx_files/properties02.xlsx +0 -0
  1800. data/test/regression/xlsx_files/properties03.xlsx +0 -0
  1801. data/test/regression/xlsx_files/properties04.xlsx +0 -0
  1802. data/test/regression/xlsx_files/properties05.xlsx +0 -0
  1803. data/test/regression/xlsx_files/protect01.xlsx +0 -0
  1804. data/test/regression/xlsx_files/protect02.xlsx +0 -0
  1805. data/test/regression/xlsx_files/protect03.xlsx +0 -0
  1806. data/test/regression/xlsx_files/protect04.xlsx +0 -0
  1807. data/test/regression/xlsx_files/protect05.xlsx +0 -0
  1808. data/test/regression/xlsx_files/protect06.xlsx +0 -0
  1809. data/test/regression/xlsx_files/protect07.xlsx +0 -0
  1810. data/test/regression/xlsx_files/quote_name01.xlsx +0 -0
  1811. data/test/regression/xlsx_files/quote_name02.xlsx +0 -0
  1812. data/test/regression/xlsx_files/quote_name03.xlsx +0 -0
  1813. data/test/regression/xlsx_files/quote_name04.xlsx +0 -0
  1814. data/test/regression/xlsx_files/repeat01.xlsx +0 -0
  1815. data/test/regression/xlsx_files/repeat02.xlsx +0 -0
  1816. data/test/regression/xlsx_files/repeat03.xlsx +0 -0
  1817. data/test/regression/xlsx_files/repeat04.xlsx +0 -0
  1818. data/test/regression/xlsx_files/repeat05.xlsx +0 -0
  1819. data/test/regression/xlsx_files/rich_string01.xlsx +0 -0
  1820. data/test/regression/xlsx_files/rich_string02.xlsx +0 -0
  1821. data/test/regression/xlsx_files/rich_string03.xlsx +0 -0
  1822. data/test/regression/xlsx_files/rich_string04.xlsx +0 -0
  1823. data/test/regression/xlsx_files/rich_string05.xlsx +0 -0
  1824. data/test/regression/xlsx_files/rich_string06.xlsx +0 -0
  1825. data/test/regression/xlsx_files/rich_string07.xlsx +0 -0
  1826. data/test/regression/xlsx_files/rich_string08.xlsx +0 -0
  1827. data/test/regression/xlsx_files/rich_string09.xlsx +0 -0
  1828. data/test/regression/xlsx_files/rich_string10.xlsx +0 -0
  1829. data/test/regression/xlsx_files/rich_string11.xlsx +0 -0
  1830. data/test/regression/xlsx_files/rich_string12.xlsx +0 -0
  1831. data/test/regression/xlsx_files/row_col_format01.xlsx +0 -0
  1832. data/test/regression/xlsx_files/row_col_format02.xlsx +0 -0
  1833. data/test/regression/xlsx_files/row_col_format03.xlsx +0 -0
  1834. data/test/regression/xlsx_files/row_col_format04.xlsx +0 -0
  1835. data/test/regression/xlsx_files/row_col_format05.xlsx +0 -0
  1836. data/test/regression/xlsx_files/row_col_format06.xlsx +0 -0
  1837. data/test/regression/xlsx_files/row_col_format07.xlsx +0 -0
  1838. data/test/regression/xlsx_files/row_col_format08.xlsx +0 -0
  1839. data/test/regression/xlsx_files/row_col_format09.xlsx +0 -0
  1840. data/test/regression/xlsx_files/row_col_format10.xlsx +0 -0
  1841. data/test/regression/xlsx_files/row_col_format11.xlsx +0 -0
  1842. data/test/regression/xlsx_files/row_col_format12.xlsx +0 -0
  1843. data/test/regression/xlsx_files/row_col_format13.xlsx +0 -0
  1844. data/test/regression/xlsx_files/row_col_format14.xlsx +0 -0
  1845. data/test/regression/xlsx_files/selection01.xlsx +0 -0
  1846. data/test/regression/xlsx_files/selection02.xlsx +0 -0
  1847. data/test/regression/xlsx_files/set_column01.xlsx +0 -0
  1848. data/test/regression/xlsx_files/set_column03.xlsx +0 -0
  1849. data/test/regression/xlsx_files/set_column04.xlsx +0 -0
  1850. data/test/regression/xlsx_files/set_column05.xlsx +0 -0
  1851. data/test/regression/xlsx_files/set_column06.xlsx +0 -0
  1852. data/test/regression/xlsx_files/set_column07.xlsx +0 -0
  1853. data/test/regression/xlsx_files/set_column08.xlsx +0 -0
  1854. data/test/regression/xlsx_files/set_column09.xlsx +0 -0
  1855. data/test/regression/xlsx_files/set_print_scale01.xlsx +0 -0
  1856. data/test/regression/xlsx_files/set_row01.xlsx +0 -0
  1857. data/test/regression/xlsx_files/set_row03.xlsx +0 -0
  1858. data/test/regression/xlsx_files/set_start_page01.xlsx +0 -0
  1859. data/test/regression/xlsx_files/set_start_page02.xlsx +0 -0
  1860. data/test/regression/xlsx_files/set_start_page03.xlsx +0 -0
  1861. data/test/regression/xlsx_files/shape01.xlsx +0 -0
  1862. data/test/regression/xlsx_files/shape02.xlsx +0 -0
  1863. data/test/regression/xlsx_files/shape03.xlsx +0 -0
  1864. data/test/regression/xlsx_files/shape04.xlsx +0 -0
  1865. data/test/regression/xlsx_files/shape_connect01.xlsx +0 -0
  1866. data/test/regression/xlsx_files/shape_connect02.xlsx +0 -0
  1867. data/test/regression/xlsx_files/shape_connect03.xlsx +0 -0
  1868. data/test/regression/xlsx_files/shape_connect04.xlsx +0 -0
  1869. data/test/regression/xlsx_files/shape_scale01.xlsx +0 -0
  1870. data/test/regression/xlsx_files/shape_stencil01.xlsx +0 -0
  1871. data/test/regression/xlsx_files/shared_strings01.xlsx +0 -0
  1872. data/test/regression/xlsx_files/shared_strings02.xlsx +0 -0
  1873. data/test/regression/xlsx_files/shared_strings_encoding.xlsx +0 -0
  1874. data/test/regression/xlsx_files/simple01.xlsx +0 -0
  1875. data/test/regression/xlsx_files/simple02.xlsx +0 -0
  1876. data/test/regression/xlsx_files/simple03.xlsx +0 -0
  1877. data/test/regression/xlsx_files/simple04.xlsx +0 -0
  1878. data/test/regression/xlsx_files/simple05.xlsx +0 -0
  1879. data/test/regression/xlsx_files/tab_color01.xlsx +0 -0
  1880. data/test/regression/xlsx_files/table01.xlsx +0 -0
  1881. data/test/regression/xlsx_files/table02.xlsx +0 -0
  1882. data/test/regression/xlsx_files/table03.xlsx +0 -0
  1883. data/test/regression/xlsx_files/table04.xlsx +0 -0
  1884. data/test/regression/xlsx_files/table05.xlsx +0 -0
  1885. data/test/regression/xlsx_files/table06.xlsx +0 -0
  1886. data/test/regression/xlsx_files/table07.xlsx +0 -0
  1887. data/test/regression/xlsx_files/table08.xlsx +0 -0
  1888. data/test/regression/xlsx_files/table09.xlsx +0 -0
  1889. data/test/regression/xlsx_files/table10.xlsx +0 -0
  1890. data/test/regression/xlsx_files/table11.xlsx +0 -0
  1891. data/test/regression/xlsx_files/table12.xlsx +0 -0
  1892. data/test/regression/xlsx_files/table13.xlsx +0 -0
  1893. data/test/regression/xlsx_files/table14.xlsx +0 -0
  1894. data/test/regression/xlsx_files/table15.xlsx +0 -0
  1895. data/test/regression/xlsx_files/table17.xlsx +0 -0
  1896. data/test/regression/xlsx_files/table18.xlsx +0 -0
  1897. data/test/regression/xlsx_files/table19.xlsx +0 -0
  1898. data/test/regression/xlsx_files/table21.xlsx +0 -0
  1899. data/test/regression/xlsx_files/table22.xlsx +0 -0
  1900. data/test/regression/xlsx_files/table23.xlsx +0 -0
  1901. data/test/regression/xlsx_files/table24.xlsx +0 -0
  1902. data/test/regression/xlsx_files/table25.xlsx +0 -0
  1903. data/test/regression/xlsx_files/table26.xlsx +0 -0
  1904. data/test/regression/xlsx_files/tutorial01.xlsx +0 -0
  1905. data/test/regression/xlsx_files/tutorial02.xlsx +0 -0
  1906. data/test/regression/xlsx_files/tutorial03.xlsx +0 -0
  1907. data/test/regression/xlsx_files/types02.xlsx +0 -0
  1908. data/test/regression/xlsx_files/types08.xlsx +0 -0
  1909. data/test/regression/xlsx_files/update_range_format_with_params.xlsx +0 -0
  1910. data/test/regression/xlsx_files/urls_as_strings.xlsx +0 -0
  1911. data/test/regression/xlsx_files/utf8_01.xlsx +0 -0
  1912. data/test/regression/xlsx_files/utf8_03.xlsx +0 -0
  1913. data/test/regression/xlsx_files/utf8_04.xlsx +0 -0
  1914. data/test/regression/xlsx_files/utf8_05.xlsx +0 -0
  1915. data/test/regression/xlsx_files/utf8_06.xlsx +0 -0
  1916. data/test/regression/xlsx_files/utf8_07.xlsx +0 -0
  1917. data/test/regression/xlsx_files/utf8_08.xlsx +0 -0
  1918. data/test/regression/xlsx_files/utf8_09.xlsx +0 -0
  1919. data/test/regression/xlsx_files/utf8_10.xlsx +0 -0
  1920. data/test/regression/xlsx_files/utf8_11.xlsx +0 -0
  1921. data/test/regression/xlsx_files/vbaProject01.bin +0 -0
  1922. data/test/regression/xlsx_files/vbaProject02.bin +0 -0
  1923. data/test/regression/xlsx_files/vml01.xlsx +0 -0
  1924. data/test/regression/xlsx_files/vml02.xlsx +0 -0
  1925. data/test/regression/xlsx_files/vml03.xlsx +0 -0
  1926. data/test/regression/xlsx_files/vml04.xlsx +0 -0
  1927. data/test/republic.png +0 -0
  1928. data/test/run_test.rb +0 -9
  1929. data/test/test_delete_files.rb +0 -37
  1930. data/test/test_example_match.rb +0 -6348
  1931. data/test/test_option_hash_for_workbook.rb +0 -72
  1932. data/test/test_xml_writer_simple.rb +0 -64
  1933. data/test/utility/test_range.rb +0 -20
  1934. data/test/vbaProject.bin +0 -0
  1935. data/test/workbook/test_check_sheetname.rb +0 -51
  1936. data/test/workbook/test_define_name.rb +0 -16
  1937. data/test/workbook/test_get_chart_range.rb +0 -57
  1938. data/test/workbook/test_sort_defined_names.rb +0 -77
  1939. data/test/workbook/test_workbook_01.rb +0 -29
  1940. data/test/workbook/test_workbook_02.rb +0 -31
  1941. data/test/workbook/test_workbook_03.rb +0 -31
  1942. data/test/workbook/test_worksheet_by_name.rb +0 -35
  1943. data/test/workbook/test_write_calc_pr.rb +0 -41
  1944. data/test/workbook/test_write_defined_name.rb +0 -17
  1945. data/test/workbook/test_write_defined_names.rb +0 -41
  1946. data/test/workbook/test_write_workbook_view.rb +0 -117
  1947. data/test/worksheet/test_calculate_spans.rb +0 -58
  1948. data/test/worksheet/test_cond_format_01.rb +0 -82
  1949. data/test/worksheet/test_cond_format_02.rb +0 -87
  1950. data/test/worksheet/test_cond_format_03.rb +0 -97
  1951. data/test/worksheet/test_cond_format_04.rb +0 -85
  1952. data/test/worksheet/test_cond_format_05.rb +0 -96
  1953. data/test/worksheet/test_cond_format_06.rb +0 -106
  1954. data/test/worksheet/test_cond_format_07.rb +0 -116
  1955. data/test/worksheet/test_cond_format_08.rb +0 -115
  1956. data/test/worksheet/test_cond_format_09.rb +0 -108
  1957. data/test/worksheet/test_cond_format_10.rb +0 -83
  1958. data/test/worksheet/test_cond_format_11.rb +0 -85
  1959. data/test/worksheet/test_cond_format_12.rb +0 -133
  1960. data/test/worksheet/test_cond_format_13.rb +0 -135
  1961. data/test/worksheet/test_cond_format_14.rb +0 -132
  1962. data/test/worksheet/test_cond_format_15.rb +0 -93
  1963. data/test/worksheet/test_cond_format_16.rb +0 -138
  1964. data/test/worksheet/test_cond_format_17.rb +0 -141
  1965. data/test/worksheet/test_cond_format_18.rb +0 -135
  1966. data/test/worksheet/test_cond_format_19.rb +0 -139
  1967. data/test/worksheet/test_cond_format_20.rb +0 -119
  1968. data/test/worksheet/test_cond_format_21.rb +0 -90
  1969. data/test/worksheet/test_cond_format_22.rb +0 -266
  1970. data/test/worksheet/test_cond_format_23.rb +0 -242
  1971. data/test/worksheet/test_cond_format_24.rb +0 -303
  1972. data/test/worksheet/test_convert_date_time_01.rb +0 -439
  1973. data/test/worksheet/test_convert_date_time_02.rb +0 -472
  1974. data/test/worksheet/test_convert_date_time_03.rb +0 -435
  1975. data/test/worksheet/test_convert_date_time_04.rb +0 -19
  1976. data/test/worksheet/test_data_bar_01.rb +0 -53
  1977. data/test/worksheet/test_data_bar_02.rb +0 -79
  1978. data/test/worksheet/test_data_bar_03.rb +0 -147
  1979. data/test/worksheet/test_data_bar_04.rb +0 -145
  1980. data/test/worksheet/test_data_bar_05.rb +0 -147
  1981. data/test/worksheet/test_data_bar_06.rb +0 -145
  1982. data/test/worksheet/test_data_bar_07.rb +0 -146
  1983. data/test/worksheet/test_data_bar_08.rb +0 -54
  1984. data/test/worksheet/test_data_bar_09.rb +0 -80
  1985. data/test/worksheet/test_data_bar_10.rb +0 -165
  1986. data/test/worksheet/test_data_bar_11.rb +0 -167
  1987. data/test/worksheet/test_data_bar_12.rb +0 -104
  1988. data/test/worksheet/test_extract_filter_tokens.rb +0 -109
  1989. data/test/worksheet/test_parse_filter_expression.rb +0 -143
  1990. data/test/worksheet/test_pixels_to_row_col.rb +0 -46
  1991. data/test/worksheet/test_position_object.rb +0 -50
  1992. data/test/worksheet/test_repeat_formula.rb +0 -55
  1993. data/test/worksheet/test_sparkline_01.rb +0 -65
  1994. data/test/worksheet/test_sparkline_02.rb +0 -92
  1995. data/test/worksheet/test_sparkline_03.rb +0 -133
  1996. data/test/worksheet/test_sparkline_04.rb +0 -93
  1997. data/test/worksheet/test_sparkline_05.rb +0 -93
  1998. data/test/worksheet/test_sparkline_06.rb +0 -114
  1999. data/test/worksheet/test_sparkline_07.rb +0 -357
  2000. data/test/worksheet/test_sparkline_08.rb +0 -177
  2001. data/test/worksheet/test_sparkline_09.rb +0 -1250
  2002. data/test/worksheet/test_sparkline_10.rb +0 -107
  2003. data/test/worksheet/test_sparkline_11.rb +0 -218
  2004. data/test/worksheet/test_sparkline_12.rb +0 -94
  2005. data/test/worksheet/test_update_format_methods.rb +0 -91
  2006. data/test/worksheet/test_worksheet_01.rb +0 -32
  2007. data/test/worksheet/test_worksheet_02.rb +0 -38
  2008. data/test/worksheet/test_worksheet_03.rb +0 -44
  2009. data/test/worksheet/test_worksheet_04.rb +0 -45
  2010. data/test/worksheet/test_write_array_formula_01.rb +0 -98
  2011. data/test/worksheet/test_write_autofilter.rb +0 -260
  2012. data/test/worksheet/test_write_brk.rb +0 -18
  2013. data/test/worksheet/test_write_cell.rb +0 -54
  2014. data/test/worksheet/test_write_cell_value.rb +0 -33
  2015. data/test/worksheet/test_write_col_breaks.rb +0 -27
  2016. data/test/worksheet/test_write_col_info.rb +0 -95
  2017. data/test/worksheet/test_write_conditional_formatting.rb +0 -72
  2018. data/test/worksheet/test_write_custom_filter.rb +0 -18
  2019. data/test/worksheet/test_write_custom_filters.rb +0 -25
  2020. data/test/worksheet/test_write_data_validation_01.rb +0 -113
  2021. data/test/worksheet/test_write_data_validation_02.rb +0 -585
  2022. data/test/worksheet/test_write_dimension.rb +0 -94
  2023. data/test/worksheet/test_write_filter.rb +0 -18
  2024. data/test/worksheet/test_write_filter_column.rb +0 -18
  2025. data/test/worksheet/test_write_filters.rb +0 -32
  2026. data/test/worksheet/test_write_formula_does_not_change_formula_string.rb +0 -18
  2027. data/test/worksheet/test_write_header_footer.rb +0 -58
  2028. data/test/worksheet/test_write_hyperlink.rb +0 -32
  2029. data/test/worksheet/test_write_legacy_drawing.rb +0 -19
  2030. data/test/worksheet/test_write_merge_cell.rb +0 -18
  2031. data/test/worksheet/test_write_merge_cells.rb +0 -192
  2032. data/test/worksheet/test_write_methods.rb +0 -248
  2033. data/test/worksheet/test_write_page_margins.rb +0 -98
  2034. data/test/worksheet/test_write_page_set_up_pr.rb +0 -19
  2035. data/test/worksheet/test_write_page_setup.rb +0 -54
  2036. data/test/worksheet/test_write_pane.rb +0 -123
  2037. data/test/worksheet/test_write_phonetic_pr.rb +0 -19
  2038. data/test/worksheet/test_write_print_options.rb +0 -77
  2039. data/test/worksheet/test_write_row_breaks.rb +0 -27
  2040. data/test/worksheet/test_write_row_element.rb +0 -69
  2041. data/test/worksheet/test_write_selection.rb +0 -18
  2042. data/test/worksheet/test_write_sheet_calc_pr.rb +0 -18
  2043. data/test/worksheet/test_write_sheet_data.rb +0 -18
  2044. data/test/worksheet/test_write_sheet_format_pr.rb +0 -18
  2045. data/test/worksheet/test_write_sheet_pr.rb +0 -36
  2046. data/test/worksheet/test_write_sheet_protection.rb +0 -174
  2047. data/test/worksheet/test_write_sheet_view.rb +0 -71
  2048. data/test/worksheet/test_write_sheet_view1.rb +0 -64
  2049. data/test/worksheet/test_write_sheet_view2.rb +0 -56
  2050. data/test/worksheet/test_write_sheet_view3.rb +0 -83
  2051. data/test/worksheet/test_write_sheet_view4.rb +0 -83
  2052. data/test/worksheet/test_write_sheet_view5.rb +0 -74
  2053. data/test/worksheet/test_write_sheet_view6.rb +0 -51
  2054. data/test/worksheet/test_write_sheet_view7.rb +0 -71
  2055. data/test/worksheet/test_write_sheet_view8.rb +0 -51
  2056. data/test/worksheet/test_write_sheet_view9.rb +0 -51
  2057. data/test/worksheet/test_write_tab_color.rb +0 -23
  2058. data/test/worksheet/test_write_worksheet_attributes.rb +0 -21
@@ -1,5 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  # frozen_string_literal: true
3
+
3
4
  require 'write_xlsx/package/xml_writer_simple'
4
5
  require 'write_xlsx/package/packager'
5
6
  require 'write_xlsx/sheets'
@@ -16,11 +17,9 @@ require 'tempfile'
16
17
  require 'digest/md5'
17
18
 
18
19
  module Writexlsx
19
-
20
20
  OFFICE_URL = 'http://schemas.microsoft.com/office/' # :nodoc:
21
21
 
22
22
  class Workbook
23
-
24
23
  include Writexlsx::Utility
25
24
 
26
25
  attr_writer :firstsheet # :nodoc:
@@ -35,16 +34,18 @@ module Writexlsx
35
34
  attr_reader :excel2003_style # :nodoc:
36
35
  attr_reader :max_url_length # :nodoc:
37
36
  attr_reader :strings_to_urls # :nodoc:
38
- attr_reader :default_url_format # :nodoc:
39
37
  attr_reader :read_only # :nodoc:
40
38
 
41
39
  def initialize(file, *option_params)
42
40
  options, default_formats = process_workbook_options(*option_params)
43
41
  @writer = Package::XMLWriterSimple.new
44
42
 
45
- @file = file
43
+ @file = file
46
44
  @tempdir = options[:tempdir] ||
47
- File.join(Dir.tmpdir, Digest::MD5.hexdigest("#{Time.now.to_f.to_s}-#{Process.pid}"))
45
+ File.join(
46
+ Dir.tmpdir,
47
+ Digest::MD5.hexdigest("#{Time.now.to_f}-#{Process.pid}")
48
+ )
48
49
  @date_1904 = options[:date_1904] || false
49
50
  @activesheet = 0
50
51
  @firstsheet = 0
@@ -73,7 +74,7 @@ module Writexlsx
73
74
  @table_count = 0
74
75
  @image_types = {}
75
76
  @images = []
76
- @strings_to_urls = (options[:strings_to_urls].nil? || options[:strings_to_urls]) ? true : false
77
+ @strings_to_urls = options[:strings_to_urls].nil? || options[:strings_to_urls] ? true : false
77
78
 
78
79
  @max_url_length = 2079
79
80
  @has_comments = false
@@ -132,7 +133,7 @@ module Writexlsx
132
133
  if args.empty?
133
134
  @worksheets
134
135
  else
135
- args.collect{|i| @worksheets[i] }
136
+ args.collect { |i| @worksheets[i] }
136
137
  end
137
138
  end
138
139
 
@@ -148,9 +149,8 @@ module Writexlsx
148
149
  # Set the date system: false = 1900 (the default), true = 1904
149
150
  #
150
151
  def set_1904(mode = true)
151
- unless sheets.empty?
152
- raise "set_1904() must be called before add_worksheet()"
153
- end
152
+ raise "set_1904() must be called before add_worksheet()" unless sheets.empty?
153
+
154
154
  @date_1904 = ptrue?(mode)
155
155
  end
156
156
 
@@ -168,31 +168,29 @@ module Writexlsx
168
168
  #
169
169
  # user must not use. it is internal method.
170
170
  #
171
- def set_xml_writer(filename) #:nodoc:
171
+ def set_xml_writer(filename) # :nodoc:
172
172
  @writer.set_xml_writer(filename)
173
173
  end
174
174
 
175
175
  #
176
176
  # user must not use. it is internal method.
177
177
  #
178
- def xml_str #:nodoc:
178
+ def xml_str # :nodoc:
179
179
  @writer.string
180
180
  end
181
181
 
182
182
  #
183
183
  # user must not use. it is internal method.
184
184
  #
185
- def assemble_xml_file #:nodoc:
185
+ def assemble_xml_file # :nodoc:
186
186
  return unless @writer
187
187
 
188
188
  # Prepare format object for passing to Style.rb.
189
189
  prepare_format_properties
190
190
 
191
191
  write_xml_declaration do
192
-
193
192
  # Write the root workbook element.
194
193
  write_workbook do
195
-
196
194
  # Write the XLSX file version.
197
195
  write_file_version
198
196
 
@@ -215,7 +213,7 @@ module Writexlsx
215
213
  write_calc_pr
216
214
 
217
215
  # Write the workbook extension storage.
218
- #write_ext_lst
216
+ # write_ext_lst
219
217
  end
220
218
  end
221
219
  end
@@ -224,7 +222,7 @@ module Writexlsx
224
222
  # At least one worksheet should be added to a new workbook. A worksheet is used to write data into cells:
225
223
  #
226
224
  def add_worksheet(name = '')
227
- name = check_sheetname(name)
225
+ name = check_sheetname(name)
228
226
  worksheet = Worksheet.new(self, @worksheets.size, name)
229
227
  @worksheets << worksheet
230
228
  worksheet
@@ -257,7 +255,7 @@ module Writexlsx
257
255
  # Check the worksheet name for non-embedded charts.
258
256
  sheetname = check_chart_sheetname(name)
259
257
  chartsheet = Chartsheet.new(self, @worksheets.size, sheetname)
260
- chartsheet.chart = chart
258
+ chartsheet.chart = chart
261
259
  @worksheets << chartsheet
262
260
  end
263
261
  @charts << chart
@@ -275,9 +273,7 @@ module Writexlsx
275
273
  #
276
274
  def add_format(property_hash = {})
277
275
  properties = {}
278
- if @excel2003_style
279
- properties.update(:font => 'Arial', :size => 10, :theme => -1)
280
- end
276
+ properties.update(:font => 'Arial', :size => 10, :theme => -1) if @excel2003_style
281
277
  properties.update(property_hash)
282
278
 
283
279
  format = Format.new(@formats, properties)
@@ -296,7 +292,7 @@ module Writexlsx
296
292
  shape.palette = @palette
297
293
 
298
294
  @shapes ||= []
299
- @shapes << shape #Store shape reference.
295
+ @shapes << shape # Store shape reference.
300
296
  shape
301
297
  end
302
298
 
@@ -310,63 +306,55 @@ module Writexlsx
310
306
 
311
307
  # Local defined names are formatted like "Sheet1!name".
312
308
  if name =~ /^(.*)!(.*)$/
313
- sheetname = $1
314
- name = $2
309
+ sheetname = ::Regexp.last_match(1)
310
+ name = ::Regexp.last_match(2)
315
311
  sheet_index = @worksheets.index_by_name(sheetname)
316
312
  else
317
313
  sheet_index = -1 # Use -1 to indicate global names.
318
314
  end
319
315
 
320
316
  # Raise if the sheet index wasn't found.
321
- if !sheet_index
322
- raise "Unknown sheet name #{sheetname} in defined_name()"
323
- end
317
+ raise "Unknown sheet name #{sheetname} in defined_name()" unless sheet_index
324
318
 
325
319
  # Raise if the name contains invalid chars as defined by Excel help.
326
320
  # Refer to the following to see Excel's syntax rules for defined names:
327
321
  # http://office.microsoft.com/en-001/excel-help/define-and-use-names-in-formulas-HA010147120.aspx#BMsyntax_rules_for_names
328
322
  #
329
- if name =~ /\A[-0-9 !"#\$%&'\(\)\*\+,\.:;<=>\?@\[\]\^`\{\}~]/ || name =~ /.+[- !"#\$%&'\(\)\*\+,\\:;<=>\?@\[\]\^`\{\}~]/
330
- raise "Invalid characters in name '#{name}' used in defined_name()"
331
- end
323
+ raise "Invalid characters in name '#{name}' used in defined_name()" if name =~ /\A[-0-9 !"#$%&'()*+,.:;<=>?@\[\]\^`{}~]/ || name =~ /.+[- !"#$%&'()*+,\\:;<=>?@\[\]\^`{}~]/
332
324
 
333
325
  # Raise if the name looks like a cell name.
334
- if name =~ %r(^[a-zA-Z][a-zA-Z]?[a-dA-D]?[0-9]+$)
335
- raise "Invalid name '#{name}' looks like a cell name in defined_name()"
336
- end
326
+ raise "Invalid name '#{name}' looks like a cell name in defined_name()" if name =~ /^[a-zA-Z][a-zA-Z]?[a-dA-D]?[0-9]+$/
337
327
 
338
328
  # Raise if the name looks like a R1C1
339
- if name =~ /\A[rcRC]\Z/ || name =~ /\A[rcRC]\d+[rcRC]\d+\Z/
340
- raise "Invalid name '#{name}' like a RC cell ref in defined_name()"
341
- end
329
+ raise "Invalid name '#{name}' like a RC cell ref in defined_name()" if name =~ /\A[rcRC]\Z/ || name =~ /\A[rcRC]\d+[rcRC]\d+\Z/
342
330
 
343
- @defined_names.push([ name, sheet_index, formula.sub(/^=/, '') ])
331
+ @defined_names.push([name, sheet_index, formula.sub(/^=/, '')])
344
332
  end
345
333
 
346
334
  #
347
335
  # Set the workbook size.
348
336
  #
349
337
  def set_size(width = nil, height = nil)
350
- if ptrue?(width)
351
- # Convert to twips at 96 dpi.
352
- @window_width = width.to_i * 1440 / 96
353
- else
354
- @window_width = 16095
355
- end
338
+ @window_width = if ptrue?(width)
339
+ # Convert to twips at 96 dpi.
340
+ width.to_i * 1440 / 96
341
+ else
342
+ 16095
343
+ end
356
344
 
357
- if ptrue?(height)
358
- # Convert to twips at 96 dpi.
359
- @window_height = height.to_i * 1440 / 96
360
- else
361
- @window_height = 9660
362
- end
345
+ @window_height = if ptrue?(height)
346
+ # Convert to twips at 96 dpi.
347
+ height.to_i * 1440 / 96
348
+ else
349
+ 9660
350
+ end
363
351
  end
364
352
 
365
353
  #
366
354
  # Set the ratio of space for worksheet tabs.
367
355
  #
368
356
  def set_tab_ratio(tab_ratio = nil)
369
- return if !tab_ratio
357
+ return unless tab_ratio
370
358
 
371
359
  if tab_ratio < 0 || tab_ratio > 100
372
360
  raise "Tab ratio outside range: 0 <= zoom <= 100"
@@ -417,40 +405,34 @@ module Writexlsx
417
405
  # Set a user defined custom document property.
418
406
  #
419
407
  def set_custom_property(name, value, type = nil)
420
- # Valid types.
408
+ # Valid types.
421
409
  valid_type = {
422
410
  'text' => 1,
423
411
  'date' => 1,
424
412
  'number' => 1,
425
413
  'number_int' => 1,
426
- 'bool' => 1,
414
+ 'bool' => 1
427
415
  }
428
416
 
429
- if !name || (type != 'bool' && !value)
430
- raise "The name and value parameters must be defined in set_custom_property()"
431
- end
417
+ raise "The name and value parameters must be defined in set_custom_property()" if !name || (type != 'bool' && !value)
432
418
 
433
419
  # Determine the type for strings and numbers if it hasn't been specified.
434
- if !ptrue?(type)
435
- if value =~ /^\d+$/
436
- type = 'number_int'
437
- elsif value =~
438
- /^([+-]?)(?=[0-9]|\.[0-9])[0-9]*(\.[0-9]*)?([Ee]([+-]?[0-9]+))?$/
439
- type = 'number'
440
- else
441
- type = 'text'
442
- end
420
+ unless ptrue?(type)
421
+ type = if value =~ /^\d+$/
422
+ 'number_int'
423
+ elsif value =~
424
+ /^([+-]?)(?=[0-9]|\.[0-9])[0-9]*(\.[0-9]*)?([Ee]([+-]?[0-9]+))?$/
425
+ 'number'
426
+ else
427
+ 'text'
428
+ end
443
429
  end
444
430
 
445
431
  # Check for valid validation types.
446
- if !valid_type[type]
447
- raise "Unknown custom type '$type' in set_custom_property()"
448
- end
432
+ raise "Unknown custom type '$type' in set_custom_property()" unless valid_type[type]
449
433
 
450
434
  # Check for strings longer than Excel's limit of 255 chars.
451
- if type == 'text' && value.length > 255
452
- raise "Length of text custom value '$value' exceeds Excel's limit of 255 in set_custom_property()"
453
- end
435
+ raise "Length of text custom value '$value' exceeds Excel's limit of 255 in set_custom_property()" if type == 'text' && value.length > 255
454
436
 
455
437
  if type == 'bool'
456
438
  value = value ? 1 : 0
@@ -459,7 +441,6 @@ module Writexlsx
459
441
  @custom_properties << [name, value, type]
460
442
  end
461
443
 
462
-
463
444
  #
464
445
  # The add_vba_project method can be used to add macros or functions to an
465
446
  # WriteXLSX file using a binary VBA project file that has been extracted
@@ -473,11 +454,7 @@ module Writexlsx
473
454
  # Set the VBA name for the workbook.
474
455
  #
475
456
  def set_vba_name(vba_codename = nil)
476
- if vba_codename
477
- @vba_codename = vba_codename
478
- else
479
- @vba_codename = 'ThisWorkbook'
480
- end
457
+ @vba_codename = vba_codename || 'ThisWorkbook'
481
458
  end
482
459
 
483
460
  #
@@ -496,7 +473,7 @@ module Writexlsx
496
473
  @calc_mode = mode || 'auto'
497
474
 
498
475
  if mode == 'manual'
499
- @calc_on_load = false
476
+ @calc_on_load = false
500
477
  elsif mode == 'auto_except_tables'
501
478
  @calc_mode = 'autoNoTable'
502
479
  end
@@ -509,9 +486,7 @@ module Writexlsx
509
486
  # with write_url(). The format is the hyperlink style defined by Excel for the
510
487
  # default theme.
511
488
  #
512
- def default_url_format
513
- @default_url_format
514
- end
489
+ attr_reader :default_url_format
515
490
  alias get_default_url_format default_url_format
516
491
 
517
492
  #
@@ -520,15 +495,13 @@ module Writexlsx
520
495
  def set_custom_color(index, red = 0, green = 0, blue = 0)
521
496
  # Match a HTML #xxyyzz style parameter
522
497
  if red.to_s =~ /^#(\w\w)(\w\w)(\w\w)/
523
- red = $1.hex
524
- green = $2.hex
525
- blue = $3.hex
498
+ red = ::Regexp.last_match(1).hex
499
+ green = ::Regexp.last_match(2).hex
500
+ blue = ::Regexp.last_match(3).hex
526
501
  end
527
502
 
528
503
  # Check that the colour index is the right range
529
- if index < 8 || index > 64
530
- raise "Color index #{index} outside range: 8 <= index <= 64"
531
- end
504
+ raise "Color index #{index} outside range: 8 <= index <= 64" if index < 8 || index > 64
532
505
 
533
506
  # Check that the colour components are in the right range
534
507
  if (red < 0 || red > 255) ||
@@ -537,7 +510,7 @@ module Writexlsx
537
510
  raise "Color component outside range: 0 <= color <= 255"
538
511
  end
539
512
 
540
- index -=8 # Adjust colour index (wingless dragonfly)
513
+ index -= 8 # Adjust colour index (wingless dragonfly)
541
514
 
542
515
  # Set the RGB value
543
516
  @palette[index] = [red, green, blue]
@@ -548,15 +521,11 @@ module Writexlsx
548
521
  index + 8
549
522
  end
550
523
 
551
- def activesheet=(worksheet) #:nodoc:
552
- @activesheet = worksheet
553
- end
524
+ attr_writer :activesheet
554
525
 
555
- def writer #:nodoc:
556
- @writer
557
- end
526
+ attr_reader :writer
558
527
 
559
- def date_1904? #:nodoc:
528
+ def date_1904? # :nodoc:
560
529
  @date_1904 ||= false
561
530
  !!@date_1904
562
531
  end
@@ -566,7 +535,7 @@ module Writexlsx
566
535
  # return the string index.
567
536
  #
568
537
  EMPTY_HASH = {}.freeze
569
- def shared_string_index(str) #:nodoc:
538
+ def shared_string_index(str) # :nodoc:
570
539
  @shared_strings.index(str, EMPTY_HASH)
571
540
  end
572
541
 
@@ -616,11 +585,11 @@ module Writexlsx
616
585
  @worksheets.worksheets
617
586
  end
618
587
 
619
- def firstsheet #:nodoc:
588
+ def firstsheet # :nodoc:
620
589
  @firstsheet ||= 0
621
590
  end
622
591
 
623
- def activesheet #:nodoc:
592
+ def activesheet # :nodoc:
624
593
  @activesheet ||= 0
625
594
  end
626
595
 
@@ -640,7 +609,7 @@ module Writexlsx
640
609
  @fileobj
641
610
  end
642
611
 
643
- def setup_filename #:nodoc:
612
+ def setup_filename # :nodoc:
644
613
  if @file.respond_to?(:to_str) && @file != ''
645
614
  @filename = @file
646
615
  @fileobj = nil
@@ -652,71 +621,69 @@ module Writexlsx
652
621
  end
653
622
  end
654
623
 
655
- def tempdir
656
- @tempdir
657
- end
624
+ attr_reader :tempdir
658
625
 
659
626
  #
660
627
  # Sets the colour palette to the Excel defaults.
661
628
  #
662
- def set_color_palette #:nodoc:
629
+ def set_color_palette # :nodoc:
663
630
  @palette = [
664
- [ 0x00, 0x00, 0x00, 0x00 ], # 8
665
- [ 0xff, 0xff, 0xff, 0x00 ], # 9
666
- [ 0xff, 0x00, 0x00, 0x00 ], # 10
667
- [ 0x00, 0xff, 0x00, 0x00 ], # 11
668
- [ 0x00, 0x00, 0xff, 0x00 ], # 12
669
- [ 0xff, 0xff, 0x00, 0x00 ], # 13
670
- [ 0xff, 0x00, 0xff, 0x00 ], # 14
671
- [ 0x00, 0xff, 0xff, 0x00 ], # 15
672
- [ 0x80, 0x00, 0x00, 0x00 ], # 16
673
- [ 0x00, 0x80, 0x00, 0x00 ], # 17
674
- [ 0x00, 0x00, 0x80, 0x00 ], # 18
675
- [ 0x80, 0x80, 0x00, 0x00 ], # 19
676
- [ 0x80, 0x00, 0x80, 0x00 ], # 20
677
- [ 0x00, 0x80, 0x80, 0x00 ], # 21
678
- [ 0xc0, 0xc0, 0xc0, 0x00 ], # 22
679
- [ 0x80, 0x80, 0x80, 0x00 ], # 23
680
- [ 0x99, 0x99, 0xff, 0x00 ], # 24
681
- [ 0x99, 0x33, 0x66, 0x00 ], # 25
682
- [ 0xff, 0xff, 0xcc, 0x00 ], # 26
683
- [ 0xcc, 0xff, 0xff, 0x00 ], # 27
684
- [ 0x66, 0x00, 0x66, 0x00 ], # 28
685
- [ 0xff, 0x80, 0x80, 0x00 ], # 29
686
- [ 0x00, 0x66, 0xcc, 0x00 ], # 30
687
- [ 0xcc, 0xcc, 0xff, 0x00 ], # 31
688
- [ 0x00, 0x00, 0x80, 0x00 ], # 32
689
- [ 0xff, 0x00, 0xff, 0x00 ], # 33
690
- [ 0xff, 0xff, 0x00, 0x00 ], # 34
691
- [ 0x00, 0xff, 0xff, 0x00 ], # 35
692
- [ 0x80, 0x00, 0x80, 0x00 ], # 36
693
- [ 0x80, 0x00, 0x00, 0x00 ], # 37
694
- [ 0x00, 0x80, 0x80, 0x00 ], # 38
695
- [ 0x00, 0x00, 0xff, 0x00 ], # 39
696
- [ 0x00, 0xcc, 0xff, 0x00 ], # 40
697
- [ 0xcc, 0xff, 0xff, 0x00 ], # 41
698
- [ 0xcc, 0xff, 0xcc, 0x00 ], # 42
699
- [ 0xff, 0xff, 0x99, 0x00 ], # 43
700
- [ 0x99, 0xcc, 0xff, 0x00 ], # 44
701
- [ 0xff, 0x99, 0xcc, 0x00 ], # 45
702
- [ 0xcc, 0x99, 0xff, 0x00 ], # 46
703
- [ 0xff, 0xcc, 0x99, 0x00 ], # 47
704
- [ 0x33, 0x66, 0xff, 0x00 ], # 48
705
- [ 0x33, 0xcc, 0xcc, 0x00 ], # 49
706
- [ 0x99, 0xcc, 0x00, 0x00 ], # 50
707
- [ 0xff, 0xcc, 0x00, 0x00 ], # 51
708
- [ 0xff, 0x99, 0x00, 0x00 ], # 52
709
- [ 0xff, 0x66, 0x00, 0x00 ], # 53
710
- [ 0x66, 0x66, 0x99, 0x00 ], # 54
711
- [ 0x96, 0x96, 0x96, 0x00 ], # 55
712
- [ 0x00, 0x33, 0x66, 0x00 ], # 56
713
- [ 0x33, 0x99, 0x66, 0x00 ], # 57
714
- [ 0x00, 0x33, 0x00, 0x00 ], # 58
715
- [ 0x33, 0x33, 0x00, 0x00 ], # 59
716
- [ 0x99, 0x33, 0x00, 0x00 ], # 60
717
- [ 0x99, 0x33, 0x66, 0x00 ], # 61
718
- [ 0x33, 0x33, 0x99, 0x00 ], # 62
719
- [ 0x33, 0x33, 0x33, 0x00 ], # 63
631
+ [0x00, 0x00, 0x00, 0x00], # 8
632
+ [0xff, 0xff, 0xff, 0x00], # 9
633
+ [0xff, 0x00, 0x00, 0x00], # 10
634
+ [0x00, 0xff, 0x00, 0x00], # 11
635
+ [0x00, 0x00, 0xff, 0x00], # 12
636
+ [0xff, 0xff, 0x00, 0x00], # 13
637
+ [0xff, 0x00, 0xff, 0x00], # 14
638
+ [0x00, 0xff, 0xff, 0x00], # 15
639
+ [0x80, 0x00, 0x00, 0x00], # 16
640
+ [0x00, 0x80, 0x00, 0x00], # 17
641
+ [0x00, 0x00, 0x80, 0x00], # 18
642
+ [0x80, 0x80, 0x00, 0x00], # 19
643
+ [0x80, 0x00, 0x80, 0x00], # 20
644
+ [0x00, 0x80, 0x80, 0x00], # 21
645
+ [0xc0, 0xc0, 0xc0, 0x00], # 22
646
+ [0x80, 0x80, 0x80, 0x00], # 23
647
+ [0x99, 0x99, 0xff, 0x00], # 24
648
+ [0x99, 0x33, 0x66, 0x00], # 25
649
+ [0xff, 0xff, 0xcc, 0x00], # 26
650
+ [0xcc, 0xff, 0xff, 0x00], # 27
651
+ [0x66, 0x00, 0x66, 0x00], # 28
652
+ [0xff, 0x80, 0x80, 0x00], # 29
653
+ [0x00, 0x66, 0xcc, 0x00], # 30
654
+ [0xcc, 0xcc, 0xff, 0x00], # 31
655
+ [0x00, 0x00, 0x80, 0x00], # 32
656
+ [0xff, 0x00, 0xff, 0x00], # 33
657
+ [0xff, 0xff, 0x00, 0x00], # 34
658
+ [0x00, 0xff, 0xff, 0x00], # 35
659
+ [0x80, 0x00, 0x80, 0x00], # 36
660
+ [0x80, 0x00, 0x00, 0x00], # 37
661
+ [0x00, 0x80, 0x80, 0x00], # 38
662
+ [0x00, 0x00, 0xff, 0x00], # 39
663
+ [0x00, 0xcc, 0xff, 0x00], # 40
664
+ [0xcc, 0xff, 0xff, 0x00], # 41
665
+ [0xcc, 0xff, 0xcc, 0x00], # 42
666
+ [0xff, 0xff, 0x99, 0x00], # 43
667
+ [0x99, 0xcc, 0xff, 0x00], # 44
668
+ [0xff, 0x99, 0xcc, 0x00], # 45
669
+ [0xcc, 0x99, 0xff, 0x00], # 46
670
+ [0xff, 0xcc, 0x99, 0x00], # 47
671
+ [0x33, 0x66, 0xff, 0x00], # 48
672
+ [0x33, 0xcc, 0xcc, 0x00], # 49
673
+ [0x99, 0xcc, 0x00, 0x00], # 50
674
+ [0xff, 0xcc, 0x00, 0x00], # 51
675
+ [0xff, 0x99, 0x00, 0x00], # 52
676
+ [0xff, 0x66, 0x00, 0x00], # 53
677
+ [0x66, 0x66, 0x99, 0x00], # 54
678
+ [0x96, 0x96, 0x96, 0x00], # 55
679
+ [0x00, 0x33, 0x66, 0x00], # 56
680
+ [0x33, 0x99, 0x66, 0x00], # 57
681
+ [0x00, 0x33, 0x00, 0x00], # 58
682
+ [0x33, 0x33, 0x00, 0x00], # 59
683
+ [0x99, 0x33, 0x00, 0x00], # 60
684
+ [0x99, 0x33, 0x66, 0x00], # 61
685
+ [0x33, 0x33, 0x99, 0x00], # 62
686
+ [0x33, 0x33, 0x33, 0x00] # 63
720
687
  ]
721
688
  end
722
689
 
@@ -724,7 +691,7 @@ module Writexlsx
724
691
  # Check for valid worksheet names. We check the length, if it contains any
725
692
  # invalid characters and if the name is unique in the workbook.
726
693
  #
727
- def check_sheetname(name) #:nodoc:
694
+ def check_sheetname(name) # :nodoc:
728
695
  @worksheets.make_and_check_sheet_chart_name(:sheet, name)
729
696
  end
730
697
 
@@ -736,21 +703,22 @@ module Writexlsx
736
703
  # Convert a range formula such as Sheet1!$B$1:$B$5 into a sheet name and cell
737
704
  # range such as ( 'Sheet1', 0, 1, 4, 1 ).
738
705
  #
739
- def get_chart_range(range) #:nodoc:
706
+ def get_chart_range(range) # :nodoc:
740
707
  # Split the range formula into sheetname and cells at the last '!'.
741
708
  pos = range.rindex('!')
742
709
  return nil unless pos
743
710
 
744
711
  if pos > 0
745
712
  sheetname = range[0, pos]
746
- cells = range[pos + 1 .. -1]
713
+ cells = range[pos + 1..-1]
747
714
  end
748
715
 
749
716
  # Split the cell range into 2 cells or else use single cell for both.
750
717
  if cells =~ /:/
751
718
  cell_1, cell_2 = cells.split(/:/)
752
719
  else
753
- cell_1, cell_2 = cells, cells
720
+ cell_1 = cells
721
+ cell_2 = cells
754
722
  end
755
723
 
756
724
  # Remove leading/trailing apostrophes and convert escaped quotes to single.
@@ -763,33 +731,30 @@ module Writexlsx
763
731
 
764
732
  # Check that we have a 1D range only.
765
733
  return nil if row_start != row_end && col_start != col_end
766
- return [sheetname, row_start, col_start, row_end, col_end]
734
+
735
+ [sheetname, row_start, col_start, row_end, col_end]
767
736
  end
768
737
 
769
- def write_workbook #:nodoc:
770
- schema = 'http://schemas.openxmlformats.org'
738
+ def write_workbook(&block) # :nodoc:
739
+ schema = 'http://schemas.openxmlformats.org'
771
740
  attributes = [
772
741
  ['xmlns',
773
742
  schema + '/spreadsheetml/2006/main'],
774
743
  ['xmlns:r',
775
744
  schema + '/officeDocument/2006/relationships']
776
745
  ]
777
- @writer.tag_elements('workbook', attributes) do
778
- yield
779
- end
746
+ @writer.tag_elements('workbook', attributes, &block)
780
747
  end
781
748
 
782
- def write_file_version #:nodoc:
749
+ def write_file_version # :nodoc:
783
750
  attributes = [
784
- ['appName', 'xl'],
751
+ %w[appName xl],
785
752
  ['lastEdited', 4],
786
753
  ['lowestEdited', 4],
787
754
  ['rupBuild', 4505]
788
755
  ]
789
756
 
790
- if @vba_project
791
- attributes << [:codeName, '{37E998C4-C9E5-D4B9-71C8-EB1FF731991C}']
792
- end
757
+ attributes << [:codeName, '{37E998C4-C9E5-D4B9-71C8-EB1FF731991C}'] if @vba_project
793
758
 
794
759
  @writer.empty_tag('fileVersion', attributes)
795
760
  end
@@ -798,14 +763,14 @@ module Writexlsx
798
763
  # Write the <fileSharing> element.
799
764
  #
800
765
  def write_file_sharing
801
- return if !ptrue?(@read_only)
766
+ return unless ptrue?(@read_only)
802
767
 
803
768
  attributes = []
804
769
  attributes << ['readOnlyRecommended', 1]
805
770
  @writer.empty_tag('fileSharing', attributes)
806
771
  end
807
772
 
808
- def write_workbook_pr #:nodoc:
773
+ def write_workbook_pr # :nodoc:
809
774
  attributes = []
810
775
  attributes << ['codeName', @vba_codename] if ptrue?(@vba_codename)
811
776
  attributes << ['date1904', 1] if date_1904?
@@ -813,38 +778,32 @@ module Writexlsx
813
778
  @writer.empty_tag('workbookPr', attributes)
814
779
  end
815
780
 
816
- def write_book_views #:nodoc:
781
+ def write_book_views # :nodoc:
817
782
  @writer.tag_elements('bookViews') { write_workbook_view }
818
783
  end
819
784
 
820
- def write_workbook_view #:nodoc:
785
+ def write_workbook_view # :nodoc:
821
786
  attributes = [
822
787
  ['xWindow', @x_window],
823
788
  ['yWindow', @y_window],
824
789
  ['windowWidth', @window_width],
825
790
  ['windowHeight', @window_height]
826
791
  ]
827
- if @tab_ratio != 600
828
- attributes << ['tabRatio', @tab_ratio]
829
- end
830
- if @firstsheet > 0
831
- attributes << ['firstSheet', @firstsheet + 1]
832
- end
833
- if @activesheet > 0
834
- attributes << ['activeTab', @activesheet]
835
- end
792
+ attributes << ['tabRatio', @tab_ratio] if @tab_ratio != 600
793
+ attributes << ['firstSheet', @firstsheet + 1] if @firstsheet > 0
794
+ attributes << ['activeTab', @activesheet] if @activesheet > 0
836
795
  @writer.empty_tag('workbookView', attributes)
837
796
  end
838
797
 
839
- def write_calc_pr #:nodoc:
840
- attributes = [ ['calcId', @calc_id] ]
798
+ def write_calc_pr # :nodoc:
799
+ attributes = [['calcId', @calc_id]]
841
800
 
842
801
  case @calc_mode
843
802
  when 'manual'
844
- attributes << ['calcMode', 'manual']
803
+ attributes << %w[calcMode manual]
845
804
  attributes << ['calcOnSave', 0]
846
805
  when 'autoNoTable'
847
- attributes << ['calcMode', 'autoNoTable']
806
+ attributes << %w[calcMode autoNoTable]
848
807
  end
849
808
 
850
809
  attributes << ['fullCalcOnLoad', 1] if @calc_on_load
@@ -852,11 +811,11 @@ module Writexlsx
852
811
  @writer.empty_tag('calcPr', attributes)
853
812
  end
854
813
 
855
- def write_ext_lst #:nodoc:
814
+ def write_ext_lst # :nodoc:
856
815
  @writer.tag_elements('extLst') { write_ext }
857
816
  end
858
817
 
859
- def write_ext #:nodoc:
818
+ def write_ext # :nodoc:
860
819
  attributes = [
861
820
  ['xmlns:mx', "#{OFFICE_URL}mac/excel/2008/main"],
862
821
  ['uri', uri]
@@ -864,41 +823,42 @@ module Writexlsx
864
823
  @writer.tag_elements('ext', attributes) { write_mx_arch_id }
865
824
  end
866
825
 
867
- def write_mx_arch_id #:nodoc:
826
+ def write_mx_arch_id # :nodoc:
868
827
  @writer.empty_tag('mx:ArchID', ['Flags', 2])
869
828
  end
870
829
 
871
- def write_defined_names #:nodoc:
830
+ def write_defined_names # :nodoc:
872
831
  return unless ptrue?(@defined_names)
832
+
873
833
  @writer.tag_elements('definedNames') do
874
834
  @defined_names.each { |defined_name| write_defined_name(defined_name) }
875
835
  end
876
836
  end
877
837
 
878
- def write_defined_name(defined_name) #:nodoc:
838
+ def write_defined_name(defined_name) # :nodoc:
879
839
  name, id, range, hidden = defined_name
880
840
 
881
- attributes = [ ['name', name] ]
841
+ attributes = [['name', name]]
882
842
  attributes << ['localSheetId', "#{id}"] unless id == -1
883
- attributes << ['hidden', '1'] if hidden
843
+ attributes << %w[hidden 1] if hidden
884
844
 
885
845
  @writer.data_element('definedName', range, attributes)
886
846
  end
887
847
 
888
- def write_io(str) #:nodoc:
848
+ def write_io(str) # :nodoc:
889
849
  @writer << str
890
850
  str
891
851
  end
892
852
 
893
853
  # for test
894
- def defined_names #:nodoc:
854
+ def defined_names # :nodoc:
895
855
  @defined_names ||= []
896
856
  end
897
857
 
898
858
  #
899
859
  # Assemble worksheets into a workbook.
900
860
  #
901
- def store_workbook #:nodoc:
861
+ def store_workbook # :nodoc:
902
862
  # Add a default worksheet if non have been added.
903
863
  add_worksheet if @worksheets.empty?
904
864
 
@@ -954,13 +914,13 @@ module Writexlsx
954
914
  # files
955
915
  #
956
916
  def parts
957
- Dir.glob(File.join(tempdir, "**", "*"), File::FNM_DOTMATCH).select {|f| File.file?(f)}
917
+ Dir.glob(File.join(tempdir, "**", "*"), File::FNM_DOTMATCH).select { |f| File.file?(f) }
958
918
  end
959
919
 
960
920
  #
961
921
  # Prepare all of the format properties prior to passing them to Styles.rb.
962
922
  #
963
- def prepare_format_properties #:nodoc:
923
+ def prepare_format_properties # :nodoc:
964
924
  # Separate format objects into XF and DXF formats.
965
925
  prepare_formats
966
926
 
@@ -981,7 +941,7 @@ module Writexlsx
981
941
  # Iterate through the XF Format objects and separate them into XF and DXF
982
942
  # formats.
983
943
  #
984
- def prepare_formats #:nodoc:
944
+ def prepare_formats # :nodoc:
985
945
  @formats.formats.each do |format|
986
946
  xf_index = format.xf_index
987
947
  dxf_index = format.dxf_index
@@ -995,7 +955,7 @@ module Writexlsx
995
955
  # Iterate through the XF Format objects and give them an index to non-default
996
956
  # font elements.
997
957
  #
998
- def prepare_fonts #:nodoc:
958
+ def prepare_fonts # :nodoc:
999
959
  fonts = {}
1000
960
 
1001
961
  @xf_formats.each { |format| format.set_font_info(fonts) }
@@ -1006,9 +966,7 @@ module Writexlsx
1006
966
  @dxf_formats.each do |format|
1007
967
  # The only font properties that can change for a DXF format are: color,
1008
968
  # bold, italic, underline and strikethrough.
1009
- if format.color? || format.bold? || format.italic? || format.underline? || format.strikeout?
1010
- format.has_dxf_font(true)
1011
- end
969
+ format.has_dxf_font(true) if format.color? || format.bold? || format.italic? || format.underline? || format.strikeout?
1012
970
  end
1013
971
  end
1014
972
 
@@ -1018,7 +976,7 @@ module Writexlsx
1018
976
  #
1019
977
  # User defined records start from index 0xA4.
1020
978
  #
1021
- def prepare_num_formats #:nodoc:
979
+ def prepare_num_formats # :nodoc:
1022
980
  num_formats = {}
1023
981
  index = 164
1024
982
  num_format_count = 0
@@ -1032,9 +990,7 @@ module Writexlsx
1032
990
  #
1033
991
  if num_format.to_s =~ /^\d+$/ && num_format.to_s !~ /^0+\d/
1034
992
  # Number format '0' is indexed as 1 in Excel.
1035
- if num_format == 0
1036
- num_format = 1
1037
- end
993
+ num_format = 1 if num_format == 0
1038
994
  # Index to a built-in number format.
1039
995
  format.num_format_index = num_format
1040
996
  next
@@ -1065,7 +1021,7 @@ module Writexlsx
1065
1021
  # Iterate through the XF Format objects and give them an index to non-default
1066
1022
  # border elements.
1067
1023
  #
1068
- def prepare_borders #:nodoc:
1024
+ def prepare_borders # :nodoc:
1069
1025
  borders = {}
1070
1026
 
1071
1027
  @xf_formats.each { |format| format.set_border_info(borders) }
@@ -1086,7 +1042,7 @@ module Writexlsx
1086
1042
  # The user defined fill properties start from 2 since there are 2 default
1087
1043
  # fills: patternType="none" and patternType="gray125".
1088
1044
  #
1089
- def prepare_fills #:nodoc:
1045
+ def prepare_fills # :nodoc:
1090
1046
  fills = {}
1091
1047
  index = 2 # Start from 2. See above.
1092
1048
 
@@ -1096,11 +1052,11 @@ module Writexlsx
1096
1052
 
1097
1053
  # Store the DXF colors separately since them may be reversed below.
1098
1054
  @dxf_formats.each do |format|
1099
- if format.pattern != 0 || format.bg_color != 0 || format.fg_color != 0
1100
- format.has_dxf_fill(true)
1101
- format.dxf_bg_color = format.bg_color
1102
- format.dxf_fg_color = format.fg_color
1103
- end
1055
+ next unless format.pattern != 0 || format.bg_color != 0 || format.fg_color != 0
1056
+
1057
+ format.has_dxf_fill(true)
1058
+ format.dxf_bg_color = format.bg_color
1059
+ format.dxf_fg_color = format.fg_color
1104
1060
  end
1105
1061
 
1106
1062
  @xf_formats.each do |format|
@@ -1154,7 +1110,7 @@ module Writexlsx
1154
1110
  # any user defined names. Stores the defined names for the Workbook.xml and
1155
1111
  # the named ranges for App.xml.
1156
1112
  #
1157
- def prepare_defined_names #:nodoc:
1113
+ def prepare_defined_names # :nodoc:
1158
1114
  @worksheets.each do |sheet|
1159
1115
  # Check for Print Area settings.
1160
1116
  if sheet.autofilter_area
@@ -1167,7 +1123,7 @@ module Writexlsx
1167
1123
  end
1168
1124
 
1169
1125
  # Check for Print Area settings.
1170
- if !sheet.print_area.empty?
1126
+ unless sheet.print_area.empty?
1171
1127
  @defined_names << [
1172
1128
  '_xlnm.Print_Area',
1173
1129
  sheet.index,
@@ -1176,26 +1132,26 @@ module Writexlsx
1176
1132
  end
1177
1133
 
1178
1134
  # Check for repeat rows/cols. aka, Print Titles.
1179
- if !sheet.print_repeat_cols.empty? || !sheet.print_repeat_rows.empty?
1180
- if !sheet.print_repeat_cols.empty? && !sheet.print_repeat_rows.empty?
1181
- range = sheet.print_repeat_cols + ',' + sheet.print_repeat_rows
1182
- else
1183
- range = sheet.print_repeat_cols + sheet.print_repeat_rows
1184
- end
1135
+ next unless !sheet.print_repeat_cols.empty? || !sheet.print_repeat_rows.empty?
1185
1136
 
1186
- # Store the defined names.
1187
- @defined_names << ['_xlnm.Print_Titles', sheet.index, range]
1188
- end
1137
+ range = if !sheet.print_repeat_cols.empty? && !sheet.print_repeat_rows.empty?
1138
+ sheet.print_repeat_cols + ',' + sheet.print_repeat_rows
1139
+ else
1140
+ sheet.print_repeat_cols + sheet.print_repeat_rows
1141
+ end
1142
+
1143
+ # Store the defined names.
1144
+ @defined_names << ['_xlnm.Print_Titles', sheet.index, range]
1189
1145
  end
1190
1146
 
1191
- @defined_names = sort_defined_names(@defined_names)
1147
+ @defined_names = sort_defined_names(@defined_names)
1192
1148
  @named_ranges = extract_named_ranges(@defined_names)
1193
1149
  end
1194
1150
 
1195
1151
  #
1196
1152
  # Iterate through the worksheets and set up the VML objects.
1197
1153
  #
1198
- def prepare_vml_objects #:nodoc:
1154
+ def prepare_vml_objects # :nodoc:
1199
1155
  comment_id = 0
1200
1156
  vml_drawing_id = 0
1201
1157
  vml_data_id = 1
@@ -1206,6 +1162,7 @@ module Writexlsx
1206
1162
 
1207
1163
  @worksheets.each do |sheet|
1208
1164
  next if !sheet.has_vml? && !sheet.has_header_vml?
1165
+
1209
1166
  if sheet.has_vml?
1210
1167
  if sheet.has_comments?
1211
1168
  comment_files += 1
@@ -1220,8 +1177,8 @@ module Writexlsx
1220
1177
  )
1221
1178
 
1222
1179
  # Each VML file should start with a shape id incremented by 1024.
1223
- vml_data_id += 1 * ( 1 + sheet.num_comments_block )
1224
- vml_shape_id += 1024 * ( 1 + sheet.num_comments_block )
1180
+ vml_data_id += 1 * (1 + sheet.num_comments_block)
1181
+ vml_shape_id += 1024 * (1 + sheet.num_comments_block)
1225
1182
  end
1226
1183
 
1227
1184
  if sheet.has_header_vml?
@@ -1234,17 +1191,13 @@ module Writexlsx
1234
1191
  # has a vbaProject binary.
1235
1192
  unless sheet.buttons_data.empty?
1236
1193
  has_button = true
1237
- if @vba_project && !sheet.vba_codename
1238
- sheet.set_vba_name
1239
- end
1194
+ sheet.set_vba_name if @vba_project && !sheet.vba_codename
1240
1195
  end
1241
1196
  end
1242
1197
 
1243
1198
  # Set the workbook vba_codename if one of the sheets has a button and
1244
1199
  # the workbook has a vbaProject binary.
1245
- if has_button && @vba_project && !@vba_codename
1246
- set_vba_name
1247
- end
1200
+ set_vba_name if has_button && @vba_project && !@vba_codename
1248
1201
  end
1249
1202
 
1250
1203
  #
@@ -1275,7 +1228,7 @@ module Writexlsx
1275
1228
  # Add "cached" data to charts to provide the numCache and strCache data for
1276
1229
  # series and title/axis ranges.
1277
1230
  #
1278
- def add_chart_data #:nodoc:
1231
+ def add_chart_data # :nodoc:
1279
1232
  worksheets = {}
1280
1233
  seen_ranges = {}
1281
1234
 
@@ -1283,8 +1236,8 @@ module Writexlsx
1283
1236
  @worksheets.each { |worksheet| worksheets[worksheet.name] = worksheet }
1284
1237
 
1285
1238
  # Build an array of the worksheet charts including any combined charts.
1286
- @charts.collect { |chart| [chart, chart.combined] }.flatten.compact.
1287
- each do |chart|
1239
+ @charts.collect { |chart| [chart, chart.combined] }.flatten.compact
1240
+ .each do |chart|
1288
1241
  chart.formula_ids.each do |range, id|
1289
1242
  # Skip if the series has user defined data.
1290
1243
  if chart.formula_data[id]
@@ -1312,9 +1265,7 @@ module Writexlsx
1312
1265
 
1313
1266
  # Raise if the name is unknown since it indicates a user error in
1314
1267
  # a chart series formula.
1315
- unless worksheets[sheetname]
1316
- raise "Unknown worksheet reference '#{sheetname} in range '#{range}' passed to add_series()\n"
1317
- end
1268
+ raise "Unknown worksheet reference '#{sheetname} in range '#{range}' passed to add_series()\n" unless worksheets[sheetname]
1318
1269
 
1319
1270
  # Add the data to the chart.
1320
1271
  # And store range data locally to avoid lookup if seen agein.
@@ -1330,11 +1281,11 @@ module Writexlsx
1330
1281
 
1331
1282
  # Convert shared string indexes to strings.
1332
1283
  data.collect do |token|
1333
- if token.kind_of?(Hash)
1284
+ if token.is_a?(Hash)
1334
1285
  string = @shared_strings.string(token[:sst_id])
1335
1286
 
1336
1287
  # Ignore rich strings for now. Deparse later if necessary.
1337
- if string =~ %r!^<r>! && string =~ %r!</r>$!
1288
+ if string =~ /^<r>/ && string =~ %r{</r>$}
1338
1289
  ''
1339
1290
  else
1340
1291
  string
@@ -1351,7 +1302,7 @@ module Writexlsx
1351
1302
  # issues in the the Spreadsheet::WriteExcel binary version. Also makes
1352
1303
  # comparison testing easier.
1353
1304
  #
1354
- def sort_defined_names(names) #:nodoc:
1305
+ def sort_defined_names(names) # :nodoc:
1355
1306
  names.sort do |a, b|
1356
1307
  name_a = normalise_defined_name(a[0])
1357
1308
  name_b = normalise_defined_name(b[0])
@@ -1362,26 +1313,24 @@ module Writexlsx
1362
1313
  1
1363
1314
  elsif name_a < name_b
1364
1315
  -1
1365
- else # name_a == name_b
1366
- # Secondary sort based on the sheet name.
1367
- if sheet_a >= sheet_b
1368
- 1
1369
- else
1370
- -1
1371
- end
1316
+ elsif sheet_a >= sheet_b # name_a == name_b
1317
+ # Secondary sort based on the sheet name.
1318
+ 1
1319
+ else
1320
+ -1
1372
1321
  end
1373
1322
  end
1374
1323
  end
1375
1324
 
1376
1325
  # Used in the above sort routine to normalise the defined names. Removes any
1377
1326
  # leading '_xmln.' from internal names and lowercases the strings.
1378
- def normalise_defined_name(name) #:nodoc:
1327
+ def normalise_defined_name(name) # :nodoc:
1379
1328
  name.sub(/^_xlnm./, '').downcase
1380
1329
  end
1381
1330
 
1382
1331
  # Used in the above sort routine to normalise the worksheet names for the
1383
1332
  # secondary sort. Removes leading quote and lowercases the strings.
1384
- def normalise_sheet_name(name) #:nodoc:
1333
+ def normalise_sheet_name(name) # :nodoc:
1385
1334
  name.sub(/^'/, '').downcase
1386
1335
  end
1387
1336
 
@@ -1389,7 +1338,7 @@ module Writexlsx
1389
1338
  # Extract the named ranges from the sorted list of defined names. These are
1390
1339
  # used in the App.xml file.
1391
1340
  #
1392
- def extract_named_ranges(defined_names) #:nodoc:
1341
+ def extract_named_ranges(defined_names) # :nodoc:
1393
1342
  named_ranges = []
1394
1343
 
1395
1344
  defined_names.each do |defined_name|
@@ -1399,19 +1348,19 @@ module Writexlsx
1399
1348
  next if name == '_xlnm._FilterDatabase'
1400
1349
 
1401
1350
  # We are only interested in defined names with ranges.
1402
- if range =~ /^([^!]+)!/
1403
- sheet_name = $1
1404
-
1405
- # Match Print_Area and Print_Titles xlnm types.
1406
- if name =~ /^_xlnm\.(.*)$/
1407
- xlnm_type = $1
1408
- name = "#{sheet_name}!#{xlnm_type}"
1409
- elsif index != -1
1410
- name = "#{sheet_name}!#{name}"
1411
- end
1351
+ next unless range =~ /^([^!]+)!/
1412
1352
 
1413
- named_ranges << name
1353
+ sheet_name = ::Regexp.last_match(1)
1354
+
1355
+ # Match Print_Area and Print_Titles xlnm types.
1356
+ if name =~ /^_xlnm\.(.*)$/
1357
+ xlnm_type = ::Regexp.last_match(1)
1358
+ name = "#{sheet_name}!#{xlnm_type}"
1359
+ elsif index != -1
1360
+ name = "#{sheet_name}!#{name}"
1414
1361
  end
1362
+
1363
+ named_ranges << name
1415
1364
  end
1416
1365
 
1417
1366
  named_ranges
@@ -1420,7 +1369,7 @@ module Writexlsx
1420
1369
  #
1421
1370
  # Iterate through the worksheets and set up any chart or image drawings.
1422
1371
  #
1423
- def prepare_drawings #:nodoc:
1372
+ def prepare_drawings # :nodoc:
1424
1373
  chart_ref_id = 0
1425
1374
  image_ref_id = 0
1426
1375
  drawing_id = 0
@@ -1481,13 +1430,13 @@ module Writexlsx
1481
1430
  end
1482
1431
 
1483
1432
  # Prepare the worksheet charts.
1484
- sheet.charts.each_with_index do |chart, index|
1433
+ sheet.charts.each_with_index do |_chart, index|
1485
1434
  chart_ref_id += 1
1486
1435
  sheet.prepare_chart(index, chart_ref_id, drawing_id)
1487
1436
  end
1488
1437
 
1489
1438
  # Prepare the worksheet shapes.
1490
- sheet.shapes.each_with_index do |shape, index|
1439
+ sheet.shapes.each_with_index do |_shape, index|
1491
1440
  sheet.prepare_shape(index, drawing_id)
1492
1441
  end
1493
1442
 
@@ -1543,8 +1492,8 @@ module Writexlsx
1543
1492
 
1544
1493
  # Sort the workbook charts references into the order that the were
1545
1494
  # written from the worksheets above.
1546
- @charts = @charts.select { |chart| chart.id != -1 }.
1547
- sort_by { |chart| chart.id }
1495
+ @charts = @charts.select { |chart| chart.id != -1 }
1496
+ .sort_by { |chart| chart.id }
1548
1497
 
1549
1498
  @drawing_count = drawing_id
1550
1499
  end
@@ -1562,19 +1511,19 @@ module Writexlsx
1562
1511
  # Open the image file and import the data.
1563
1512
  data = File.binread(filename)
1564
1513
  md5 = Digest::MD5.hexdigest(data)
1565
- if data.unpack('x A3')[0] == 'PNG'
1514
+ if data.unpack1('x A3') == 'PNG'
1566
1515
  # Test for PNGs.
1567
1516
  type, width, height, x_dpi, y_dpi = process_png(data)
1568
1517
  @image_types[:png] = 1
1569
- elsif data.unpack('n')[0] == 0xFFD8
1518
+ elsif data.unpack1('n') == 0xFFD8
1570
1519
  # Test for JPEG files.
1571
1520
  type, width, height, x_dpi, y_dpi = process_jpg(data, filename)
1572
1521
  @image_types[:jpeg] = 1
1573
- elsif data.unpack('A4')[0] == 'GIF8'
1522
+ elsif data.unpack1('A4') == 'GIF8'
1574
1523
  # Test for GIFs.
1575
1524
  type, width, height, x_dpi, y_dpi = process_gif(data, filename)
1576
1525
  @image_types[:gif] = 1
1577
- elsif data.unpack('A2')[0] == 'BM'
1526
+ elsif data.unpack1('A2') == 'BM'
1578
1527
  # Test for BMPs.
1579
1528
  type, width, height = process_bmp(data, filename)
1580
1529
  @image_types[:bmp] = 1
@@ -1607,17 +1556,17 @@ module Writexlsx
1607
1556
  # IHDR element. Also read the DPI in the pHYs element.
1608
1557
  while offset < data_length
1609
1558
 
1610
- length = data[offset + 0, 4].unpack("N")[0]
1611
- png_type = data[offset + 4, 4].unpack("A4")[0]
1559
+ length = data[offset + 0, 4].unpack1("N")
1560
+ png_type = data[offset + 4, 4].unpack1("A4")
1612
1561
 
1613
1562
  case png_type
1614
1563
  when "IHDR"
1615
- width = data[offset + 8, 4].unpack("N")[0]
1616
- height = data[offset + 12, 4].unpack("N")[0]
1564
+ width = data[offset + 8, 4].unpack1("N")
1565
+ height = data[offset + 12, 4].unpack1("N")
1617
1566
  when "pHYs"
1618
- x_ppu = data[offset + 8, 4].unpack("N")[0]
1619
- y_ppu = data[offset + 12, 4].unpack("N")[0]
1620
- units = data[offset + 16, 1].unpack("C")[0]
1567
+ x_ppu = data[offset + 8, 4].unpack1("N")
1568
+ y_ppu = data[offset + 12, 4].unpack1("N")
1569
+ units = data[offset + 16, 1].unpack1("C")
1621
1570
 
1622
1571
  if units == 1
1623
1572
  x_dpi = x_ppu * 0.0254
@@ -1644,22 +1593,22 @@ module Writexlsx
1644
1593
 
1645
1594
  # Search through the image data to read the JPEG markers.
1646
1595
  while offset < data_length
1647
- marker = data[offset+0, 2].unpack("n")[0]
1648
- length = data[offset+2, 2].unpack("n")[0]
1596
+ marker = data[offset + 0, 2].unpack1("n")
1597
+ length = data[offset + 2, 2].unpack1("n")
1649
1598
 
1650
1599
  # Read the height and width in the 0xFFCn elements
1651
1600
  # (Except C4, C8 and CC which aren't SOF markers).
1652
1601
  if (marker & 0xFFF0) == 0xFFC0 &&
1653
1602
  marker != 0xFFC4 && marker != 0xFFCC
1654
- height = data[offset+5, 2].unpack("n")[0]
1655
- width = data[offset+7, 2].unpack("n")[0]
1603
+ height = data[offset + 5, 2].unpack1("n")
1604
+ width = data[offset + 7, 2].unpack1("n")
1656
1605
  end
1657
1606
 
1658
1607
  # Read the DPI in the 0xFFE0 element.
1659
1608
  if marker == 0xFFE0
1660
- units = data[offset + 11, 1].unpack("C")[0]
1661
- x_density = data[offset + 12, 2].unpack("n")[0]
1662
- y_density = data[offset + 14, 2].unpack("n")[0]
1609
+ units = data[offset + 11, 1].unpack1("C")
1610
+ x_density = data[offset + 12, 2].unpack1("n")
1611
+ y_density = data[offset + 14, 2].unpack1("n")
1663
1612
 
1664
1613
  if units == 1
1665
1614
  x_dpi = x_density
@@ -1675,6 +1624,7 @@ module Writexlsx
1675
1624
  end
1676
1625
 
1677
1626
  raise "#{filename}: no size data found in jpeg image.\n" unless height
1627
+
1678
1628
  [type, width, height, x_dpi, y_dpi]
1679
1629
  end
1680
1630
 
@@ -1686,18 +1636,16 @@ module Writexlsx
1686
1636
  x_dpi = 96
1687
1637
  y_dpi = 96
1688
1638
 
1689
- width = data[6, 2].unpack("v")[0]
1690
- height = data[8, 2].unpack("v")[0]
1639
+ width = data[6, 2].unpack1("v")
1640
+ height = data[8, 2].unpack1("v")
1691
1641
 
1692
- if height.nil?
1693
- raise "#{filename}: no size data found in gif image.\n"
1694
- end
1642
+ raise "#{filename}: no size data found in gif image.\n" if height.nil?
1695
1643
 
1696
1644
  [type, width, height, x_dpi, y_dpi]
1697
1645
  end
1698
1646
 
1699
1647
  # Extract width and height information from a BMP file.
1700
- def process_bmp(data, filename) #:nodoc:
1648
+ def process_bmp(data, filename) # :nodoc:
1701
1649
  type = 'bmp'
1702
1650
 
1703
1651
  # Check that the file is big enough to be a bitmap.
@@ -1714,8 +1662,9 @@ module Writexlsx
1714
1662
  raise "#{filename}: only 1 plane supported in bitmap image." unless planes == 1
1715
1663
 
1716
1664
  # Read the bitmap compression. Verify compression.
1717
- compression = data.unpack("x30 V")[0]
1665
+ compression = data.unpack1("x30 V")
1718
1666
  raise "#{filename}: compression not supported in bitmap image." unless compression == 0
1667
+
1719
1668
  [type, width, height]
1720
1669
  end
1721
1670
  end