caxlsx 3.0.4 → 3.2.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 (294) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +9 -9
  3. data/.yardopts_guide +18 -18
  4. data/CHANGELOG.md +354 -334
  5. data/LICENSE +21 -21
  6. data/README.md +168 -170
  7. data/Rakefile +29 -29
  8. data/examples/generate.rb +15 -15
  9. data/lib/axlsx/content_type/abstract_content_type.rb +32 -32
  10. data/lib/axlsx/content_type/content_type.rb +26 -26
  11. data/lib/axlsx/content_type/default.rb +25 -25
  12. data/lib/axlsx/content_type/override.rb +25 -25
  13. data/lib/axlsx/doc_props/app.rb +235 -235
  14. data/lib/axlsx/doc_props/core.rb +39 -39
  15. data/lib/axlsx/drawing/area_chart.rb +99 -99
  16. data/lib/axlsx/drawing/area_series.rb +110 -110
  17. data/lib/axlsx/drawing/ax_data_source.rb +26 -26
  18. data/lib/axlsx/drawing/axes.rb +61 -61
  19. data/lib/axlsx/drawing/axis.rb +190 -190
  20. data/lib/axlsx/drawing/bar_3D_chart.rb +148 -151
  21. data/lib/axlsx/drawing/bar_chart.rb +138 -143
  22. data/lib/axlsx/drawing/bar_series.rb +97 -80
  23. data/lib/axlsx/drawing/bubble_chart.rb +59 -59
  24. data/lib/axlsx/drawing/bubble_series.rb +63 -63
  25. data/lib/axlsx/drawing/cat_axis.rb +85 -85
  26. data/lib/axlsx/drawing/chart.rb +276 -276
  27. data/lib/axlsx/drawing/d_lbls.rb +90 -90
  28. data/lib/axlsx/drawing/drawing.rb +167 -167
  29. data/lib/axlsx/drawing/graphic_frame.rb +54 -54
  30. data/lib/axlsx/drawing/hyperlink.rb +100 -100
  31. data/lib/axlsx/drawing/line_3D_chart.rb +68 -68
  32. data/lib/axlsx/drawing/line_chart.rb +99 -99
  33. data/lib/axlsx/drawing/line_series.rb +110 -110
  34. data/lib/axlsx/drawing/marker.rb +84 -84
  35. data/lib/axlsx/drawing/num_data.rb +52 -52
  36. data/lib/axlsx/drawing/num_data_source.rb +62 -62
  37. data/lib/axlsx/drawing/num_val.rb +34 -34
  38. data/lib/axlsx/drawing/one_cell_anchor.rb +99 -99
  39. data/lib/axlsx/drawing/pic.rb +211 -211
  40. data/lib/axlsx/drawing/picture_locking.rb +42 -42
  41. data/lib/axlsx/drawing/pie_3D_chart.rb +47 -47
  42. data/lib/axlsx/drawing/pie_series.rb +74 -74
  43. data/lib/axlsx/drawing/scaling.rb +60 -60
  44. data/lib/axlsx/drawing/scatter_chart.rb +74 -74
  45. data/lib/axlsx/drawing/scatter_series.rb +129 -98
  46. data/lib/axlsx/drawing/ser_axis.rb +45 -45
  47. data/lib/axlsx/drawing/series.rb +69 -69
  48. data/lib/axlsx/drawing/series_title.rb +25 -25
  49. data/lib/axlsx/drawing/str_data.rb +42 -42
  50. data/lib/axlsx/drawing/str_val.rb +34 -34
  51. data/lib/axlsx/drawing/title.rb +97 -97
  52. data/lib/axlsx/drawing/two_cell_anchor.rb +97 -97
  53. data/lib/axlsx/drawing/val_axis.rb +37 -37
  54. data/lib/axlsx/drawing/view_3D.rb +115 -115
  55. data/lib/axlsx/drawing/vml_drawing.rb +42 -42
  56. data/lib/axlsx/drawing/vml_shape.rb +66 -66
  57. data/lib/axlsx/package.rb +388 -363
  58. data/lib/axlsx/rels/relationship.rb +130 -130
  59. data/lib/axlsx/rels/relationships.rb +32 -32
  60. data/lib/axlsx/stylesheet/border.rb +73 -71
  61. data/lib/axlsx/stylesheet/border_pr.rb +71 -71
  62. data/lib/axlsx/stylesheet/cell_alignment.rb +132 -132
  63. data/lib/axlsx/stylesheet/cell_protection.rb +41 -41
  64. data/lib/axlsx/stylesheet/cell_style.rb +72 -72
  65. data/lib/axlsx/stylesheet/color.rb +76 -76
  66. data/lib/axlsx/stylesheet/dxf.rb +79 -79
  67. data/lib/axlsx/stylesheet/fill.rb +35 -35
  68. data/lib/axlsx/stylesheet/font.rb +156 -156
  69. data/lib/axlsx/stylesheet/gradient_fill.rb +103 -103
  70. data/lib/axlsx/stylesheet/gradient_stop.rb +37 -37
  71. data/lib/axlsx/stylesheet/num_fmt.rb +86 -86
  72. data/lib/axlsx/stylesheet/pattern_fill.rb +73 -73
  73. data/lib/axlsx/stylesheet/styles.rb +494 -420
  74. data/lib/axlsx/stylesheet/table_style.rb +54 -54
  75. data/lib/axlsx/stylesheet/table_style_element.rb +77 -77
  76. data/lib/axlsx/stylesheet/table_styles.rb +46 -46
  77. data/lib/axlsx/stylesheet/xf.rb +147 -147
  78. data/lib/axlsx/util/accessors.rb +64 -64
  79. data/lib/axlsx/util/constants.rb +410 -401
  80. data/lib/axlsx/util/mime_type_utils.rb +11 -11
  81. data/lib/axlsx/util/options_parser.rb +16 -16
  82. data/lib/axlsx/util/serialized_attributes.rb +89 -89
  83. data/lib/axlsx/util/simple_typed_list.rb +179 -179
  84. data/lib/axlsx/util/storage.rb +146 -146
  85. data/lib/axlsx/util/validators.rb +312 -312
  86. data/lib/axlsx/util/zip_command.rb +73 -73
  87. data/lib/axlsx/version.rb +5 -5
  88. data/lib/axlsx/workbook/defined_name.rb +128 -128
  89. data/lib/axlsx/workbook/defined_names.rb +21 -21
  90. data/lib/axlsx/workbook/shared_strings_table.rb +77 -77
  91. data/lib/axlsx/workbook/workbook.rb +395 -370
  92. data/lib/axlsx/workbook/workbook_view.rb +80 -80
  93. data/lib/axlsx/workbook/workbook_views.rb +22 -22
  94. data/lib/axlsx/workbook/worksheet/auto_filter/auto_filter.rb +77 -77
  95. data/lib/axlsx/workbook/worksheet/auto_filter/filter_column.rb +94 -94
  96. data/lib/axlsx/workbook/worksheet/auto_filter/filters.rb +244 -244
  97. data/lib/axlsx/workbook/worksheet/break.rb +35 -35
  98. data/lib/axlsx/workbook/worksheet/cell.rb +506 -505
  99. data/lib/axlsx/workbook/worksheet/cell_serializer.rb +164 -164
  100. data/lib/axlsx/workbook/worksheet/cfvo.rb +60 -60
  101. data/lib/axlsx/workbook/worksheet/cfvos.rb +18 -18
  102. data/lib/axlsx/workbook/worksheet/col.rb +145 -145
  103. data/lib/axlsx/workbook/worksheet/col_breaks.rb +35 -35
  104. data/lib/axlsx/workbook/worksheet/color_scale.rb +110 -110
  105. data/lib/axlsx/workbook/worksheet/cols.rb +23 -23
  106. data/lib/axlsx/workbook/worksheet/comment.rb +91 -91
  107. data/lib/axlsx/workbook/worksheet/comments.rb +82 -82
  108. data/lib/axlsx/workbook/worksheet/conditional_formatting.rb +82 -82
  109. data/lib/axlsx/workbook/worksheet/conditional_formatting_rule.rb +220 -220
  110. data/lib/axlsx/workbook/worksheet/conditional_formattings.rb +25 -25
  111. data/lib/axlsx/workbook/worksheet/data_bar.rb +129 -129
  112. data/lib/axlsx/workbook/worksheet/data_validation.rb +246 -246
  113. data/lib/axlsx/workbook/worksheet/data_validations.rb +28 -28
  114. data/lib/axlsx/workbook/worksheet/date_time_converter.rb +30 -30
  115. data/lib/axlsx/workbook/worksheet/dimension.rb +64 -64
  116. data/lib/axlsx/workbook/worksheet/header_footer.rb +52 -52
  117. data/lib/axlsx/workbook/worksheet/icon_set.rb +81 -81
  118. data/lib/axlsx/workbook/worksheet/merged_cells.rb +37 -37
  119. data/lib/axlsx/workbook/worksheet/outline_pr.rb +33 -33
  120. data/lib/axlsx/workbook/worksheet/page_margins.rb +97 -97
  121. data/lib/axlsx/workbook/worksheet/page_set_up_pr.rb +44 -44
  122. data/lib/axlsx/workbook/worksheet/page_setup.rb +240 -240
  123. data/lib/axlsx/workbook/worksheet/pane.rb +139 -139
  124. data/lib/axlsx/workbook/worksheet/pivot_table.rb +296 -289
  125. data/lib/axlsx/workbook/worksheet/pivot_table_cache_definition.rb +66 -66
  126. data/lib/axlsx/workbook/worksheet/pivot_tables.rb +24 -24
  127. data/lib/axlsx/workbook/worksheet/print_options.rb +39 -39
  128. data/lib/axlsx/workbook/worksheet/protected_range.rb +47 -47
  129. data/lib/axlsx/workbook/worksheet/protected_ranges.rb +37 -37
  130. data/lib/axlsx/workbook/worksheet/rich_text.rb +55 -55
  131. data/lib/axlsx/workbook/worksheet/rich_text_run.rb +250 -250
  132. data/lib/axlsx/workbook/worksheet/row.rb +164 -162
  133. data/lib/axlsx/workbook/worksheet/row_breaks.rb +33 -33
  134. data/lib/axlsx/workbook/worksheet/selection.rb +101 -101
  135. data/lib/axlsx/workbook/worksheet/sheet_calc_pr.rb +29 -29
  136. data/lib/axlsx/workbook/worksheet/sheet_data.rb +27 -27
  137. data/lib/axlsx/workbook/worksheet/sheet_pr.rb +87 -87
  138. data/lib/axlsx/workbook/worksheet/sheet_protection.rb +118 -118
  139. data/lib/axlsx/workbook/worksheet/sheet_view.rb +213 -213
  140. data/lib/axlsx/workbook/worksheet/table.rb +102 -102
  141. data/lib/axlsx/workbook/worksheet/table_style_info.rb +49 -49
  142. data/lib/axlsx/workbook/worksheet/tables.rb +34 -34
  143. data/lib/axlsx/workbook/worksheet/worksheet.rb +786 -764
  144. data/lib/axlsx/workbook/worksheet/worksheet_comments.rb +58 -58
  145. data/lib/axlsx/workbook/worksheet/worksheet_drawing.rb +58 -58
  146. data/lib/axlsx/workbook/worksheet/worksheet_hyperlink.rb +74 -74
  147. data/lib/axlsx/workbook/worksheet/worksheet_hyperlinks.rb +38 -38
  148. data/lib/axlsx.rb +185 -170
  149. data/lib/caxlsx.rb +2 -2
  150. data/lib/schema/dc.xsd +118 -118
  151. data/lib/schema/dcmitype.xsd +51 -51
  152. data/lib/schema/dcterms.xsd +331 -331
  153. data/lib/schema/dml-chartDrawing.xsd +146 -146
  154. data/lib/schema/dml-compatibility.xsd +14 -14
  155. data/lib/schema/dml-lockedCanvas.xsd +11 -11
  156. data/lib/schema/dml-main.xsd +3048 -3048
  157. data/lib/schema/dml-picture.xsd +23 -23
  158. data/lib/schema/dml-spreadsheetDrawing.xsd +185 -185
  159. data/lib/schema/dml-wordprocessingDrawing.xsd +185 -185
  160. data/lib/schema/shared-additionalCharacteristics.xsd +28 -28
  161. data/lib/schema/shared-bibliography.xsd +144 -144
  162. data/lib/schema/shared-commonSimpleTypes.xsd +166 -166
  163. data/lib/schema/shared-customXmlDataProperties.xsd +25 -25
  164. data/lib/schema/shared-customXmlSchemaProperties.xsd +18 -18
  165. data/lib/schema/shared-documentPropertiesCustom.xsd +59 -59
  166. data/lib/schema/shared-documentPropertiesExtended.xsd +56 -56
  167. data/lib/schema/shared-documentPropertiesVariantTypes.xsd +195 -195
  168. data/lib/schema/shared-relationshipReference.xsd +25 -25
  169. data/lib/schema/vml-main.xsd +569 -569
  170. data/lib/schema/vml-officeDrawing.xsd +509 -509
  171. data/lib/schema/vml-presentationDrawing.xsd +12 -12
  172. data/lib/schema/vml-spreadsheetDrawing.xsd +108 -108
  173. data/lib/schema/vml-wordprocessingDrawing.xsd +96 -96
  174. data/lib/schema/xml.xsd +116 -116
  175. data/test/benchmark.rb +72 -72
  176. data/test/content_type/tc_content_type.rb +76 -76
  177. data/test/content_type/tc_default.rb +16 -16
  178. data/test/content_type/tc_override.rb +14 -14
  179. data/test/doc_props/tc_app.rb +43 -43
  180. data/test/doc_props/tc_core.rb +42 -42
  181. data/test/drawing/tc_area_chart.rb +39 -39
  182. data/test/drawing/tc_area_series.rb +71 -71
  183. data/test/drawing/tc_axes.rb +7 -7
  184. data/test/drawing/tc_axis.rb +112 -112
  185. data/test/drawing/tc_bar_3D_chart.rb +86 -71
  186. data/test/drawing/tc_bar_chart.rb +86 -71
  187. data/test/drawing/tc_bar_series.rb +46 -37
  188. data/test/drawing/tc_bubble_chart.rb +44 -44
  189. data/test/drawing/tc_bubble_series.rb +21 -21
  190. data/test/drawing/tc_cat_axis.rb +31 -31
  191. data/test/drawing/tc_cat_axis_data.rb +27 -27
  192. data/test/drawing/tc_chart.rb +123 -123
  193. data/test/drawing/tc_d_lbls.rb +57 -57
  194. data/test/drawing/tc_data_source.rb +23 -23
  195. data/test/drawing/tc_drawing.rb +80 -80
  196. data/test/drawing/tc_graphic_frame.rb +27 -27
  197. data/test/drawing/tc_hyperlink.rb +64 -64
  198. data/test/drawing/tc_line_3d_chart.rb +47 -47
  199. data/test/drawing/tc_line_chart.rb +39 -39
  200. data/test/drawing/tc_line_series.rb +71 -71
  201. data/test/drawing/tc_marker.rb +44 -44
  202. data/test/drawing/tc_named_axis_data.rb +27 -27
  203. data/test/drawing/tc_num_data.rb +31 -31
  204. data/test/drawing/tc_num_val.rb +29 -29
  205. data/test/drawing/tc_one_cell_anchor.rb +66 -66
  206. data/test/drawing/tc_pic.rb +103 -103
  207. data/test/drawing/tc_picture_locking.rb +72 -72
  208. data/test/drawing/tc_pie_3D_chart.rb +28 -28
  209. data/test/drawing/tc_pie_series.rb +33 -33
  210. data/test/drawing/tc_scaling.rb +36 -36
  211. data/test/drawing/tc_scatter_chart.rb +48 -48
  212. data/test/drawing/tc_scatter_series.rb +74 -56
  213. data/test/drawing/tc_ser_axis.rb +31 -31
  214. data/test/drawing/tc_series.rb +23 -23
  215. data/test/drawing/tc_series_title.rb +54 -54
  216. data/test/drawing/tc_str_data.rb +18 -18
  217. data/test/drawing/tc_str_val.rb +30 -30
  218. data/test/drawing/tc_title.rb +70 -70
  219. data/test/drawing/tc_two_cell_anchor.rb +36 -36
  220. data/test/drawing/tc_val_axis.rb +24 -24
  221. data/test/drawing/tc_view_3D.rb +54 -54
  222. data/test/drawing/tc_vml_drawing.rb +25 -25
  223. data/test/drawing/tc_vml_shape.rb +106 -106
  224. data/test/profile.rb +24 -24
  225. data/test/rels/tc_relationship.rb +52 -52
  226. data/test/rels/tc_relationships.rb +37 -37
  227. data/test/stylesheet/tc_border.rb +37 -37
  228. data/test/stylesheet/tc_border_pr.rb +32 -32
  229. data/test/stylesheet/tc_cell_alignment.rb +81 -81
  230. data/test/stylesheet/tc_cell_protection.rb +29 -29
  231. data/test/stylesheet/tc_cell_style.rb +57 -57
  232. data/test/stylesheet/tc_color.rb +43 -43
  233. data/test/stylesheet/tc_dxf.rb +81 -81
  234. data/test/stylesheet/tc_fill.rb +18 -18
  235. data/test/stylesheet/tc_font.rb +133 -133
  236. data/test/stylesheet/tc_gradient_fill.rb +72 -72
  237. data/test/stylesheet/tc_gradient_stop.rb +31 -31
  238. data/test/stylesheet/tc_num_fmt.rb +30 -30
  239. data/test/stylesheet/tc_pattern_fill.rb +43 -43
  240. data/test/stylesheet/tc_styles.rb +309 -261
  241. data/test/stylesheet/tc_table_style.rb +44 -44
  242. data/test/stylesheet/tc_table_style_element.rb +45 -45
  243. data/test/stylesheet/tc_table_styles.rb +29 -29
  244. data/test/stylesheet/tc_xf.rb +120 -120
  245. data/test/tc_axlsx.rb +109 -109
  246. data/test/tc_helper.rb +10 -12
  247. data/test/tc_package.rb +317 -264
  248. data/test/util/tc_mime_type_utils.rb +13 -13
  249. data/test/util/tc_serialized_attributes.rb +19 -19
  250. data/test/util/tc_simple_typed_list.rb +77 -77
  251. data/test/util/tc_validators.rb +210 -210
  252. data/test/workbook/tc_defined_name.rb +49 -49
  253. data/test/workbook/tc_shared_strings_table.rb +59 -59
  254. data/test/workbook/tc_workbook.rb +165 -160
  255. data/test/workbook/tc_workbook_view.rb +50 -50
  256. data/test/workbook/worksheet/auto_filter/tc_auto_filter.rb +38 -38
  257. data/test/workbook/worksheet/auto_filter/tc_filter_column.rb +76 -76
  258. data/test/workbook/worksheet/auto_filter/tc_filters.rb +50 -50
  259. data/test/workbook/worksheet/tc_break.rb +49 -49
  260. data/test/workbook/worksheet/tc_cell.rb +465 -453
  261. data/test/workbook/worksheet/tc_cfvo.rb +31 -31
  262. data/test/workbook/worksheet/tc_col.rb +93 -93
  263. data/test/workbook/worksheet/tc_color_scale.rb +58 -58
  264. data/test/workbook/worksheet/tc_comment.rb +72 -72
  265. data/test/workbook/worksheet/tc_comments.rb +57 -57
  266. data/test/workbook/worksheet/tc_conditional_formatting.rb +224 -224
  267. data/test/workbook/worksheet/tc_data_bar.rb +46 -46
  268. data/test/workbook/worksheet/tc_data_validation.rb +265 -265
  269. data/test/workbook/worksheet/tc_date_time_converter.rb +124 -124
  270. data/test/workbook/worksheet/tc_header_footer.rb +151 -151
  271. data/test/workbook/worksheet/tc_icon_set.rb +45 -45
  272. data/test/workbook/worksheet/tc_outline_pr.rb +19 -19
  273. data/test/workbook/worksheet/tc_page_margins.rb +97 -97
  274. data/test/workbook/worksheet/tc_page_set_up_pr.rb +15 -15
  275. data/test/workbook/worksheet/tc_page_setup.rb +143 -143
  276. data/test/workbook/worksheet/tc_pane.rb +54 -54
  277. data/test/workbook/worksheet/tc_pivot_table.rb +180 -135
  278. data/test/workbook/worksheet/tc_pivot_table_cache_definition.rb +62 -54
  279. data/test/workbook/worksheet/tc_print_options.rb +72 -72
  280. data/test/workbook/worksheet/tc_protected_range.rb +17 -17
  281. data/test/workbook/worksheet/tc_rich_text.rb +44 -44
  282. data/test/workbook/worksheet/tc_rich_text_run.rb +173 -173
  283. data/test/workbook/worksheet/tc_row.rb +160 -139
  284. data/test/workbook/worksheet/tc_selection.rb +55 -55
  285. data/test/workbook/worksheet/tc_sheet_calc_pr.rb +18 -18
  286. data/test/workbook/worksheet/tc_sheet_format_pr.rb +88 -88
  287. data/test/workbook/worksheet/tc_sheet_pr.rb +49 -49
  288. data/test/workbook/worksheet/tc_sheet_protection.rb +117 -117
  289. data/test/workbook/worksheet/tc_sheet_view.rb +214 -214
  290. data/test/workbook/worksheet/tc_table.rb +77 -67
  291. data/test/workbook/worksheet/tc_table_style_info.rb +53 -53
  292. data/test/workbook/worksheet/tc_worksheet.rb +632 -601
  293. data/test/workbook/worksheet/tc_worksheet_hyperlink.rb +55 -55
  294. metadata +11 -11
@@ -1,19 +1,19 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestOutlinePr < Test::Unit::TestCase
4
- def setup
5
- @outline_pr = Axlsx::OutlinePr.new(:summary_below => false, :summary_right => true, :apply_styles => false)
6
- end
7
-
8
- def test_summary_below
9
- assert_equal false, @outline_pr.summary_below
10
- end
11
-
12
- def test_summary_right
13
- assert_equal true, @outline_pr.summary_right
14
- end
15
-
16
- def test_apply_styles
17
- assert_equal false, @outline_pr.apply_styles
18
- end
19
- end
1
+ require 'tc_helper.rb'
2
+
3
+ class TestOutlinePr < Test::Unit::TestCase
4
+ def setup
5
+ @outline_pr = Axlsx::OutlinePr.new(:summary_below => false, :summary_right => true, :apply_styles => false)
6
+ end
7
+
8
+ def test_summary_below
9
+ assert_equal false, @outline_pr.summary_below
10
+ end
11
+
12
+ def test_summary_right
13
+ assert_equal true, @outline_pr.summary_right
14
+ end
15
+
16
+ def test_apply_styles
17
+ assert_equal false, @outline_pr.apply_styles
18
+ end
19
+ end
@@ -1,97 +1,97 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestPageMargins < Test::Unit::TestCase
4
-
5
- def setup
6
- p = Axlsx::Package.new
7
- ws = p.workbook.add_worksheet :name=>"hmmm"
8
- @pm = ws.page_margins
9
- end
10
-
11
- def test_initialize
12
- assert_equal(Axlsx::PageMargins::DEFAULT_LEFT_RIGHT, @pm.left)
13
- assert_equal(Axlsx::PageMargins::DEFAULT_LEFT_RIGHT, @pm.right)
14
- assert_equal(Axlsx::PageMargins::DEFAULT_TOP_BOTTOM, @pm.top)
15
- assert_equal(Axlsx::PageMargins::DEFAULT_TOP_BOTTOM, @pm.bottom)
16
- assert_equal(Axlsx::PageMargins::DEFAULT_HEADER_FOOTER, @pm.header)
17
- assert_equal(Axlsx::PageMargins::DEFAULT_HEADER_FOOTER, @pm.footer)
18
- end
19
-
20
- def test_initialize_with_options
21
- optioned = Axlsx::PageMargins.new(:left => 2, :right => 3, :top => 2, :bottom => 1, :header => 0.1, :footer => 0.1)
22
- assert_equal(2, optioned.left)
23
- assert_equal(3, optioned.right)
24
- assert_equal(2, optioned.top)
25
- assert_equal(1, optioned.bottom)
26
- assert_equal(0.1, optioned.header)
27
- assert_equal(0.1, optioned.footer)
28
- end
29
-
30
-
31
- def test_set_all_values
32
- @pm.set(:left => 1.1, :right => 1.2, :top => 1.3, :bottom => 1.4, :header => 0.8, :footer => 0.9)
33
- assert_equal(1.1, @pm.left)
34
- assert_equal(1.2, @pm.right)
35
- assert_equal(1.3, @pm.top)
36
- assert_equal(1.4, @pm.bottom)
37
- assert_equal(0.8, @pm.header)
38
- assert_equal(0.9, @pm.footer)
39
- end
40
-
41
- def test_set_some_values
42
- @pm.set(:left => 1.1, :right => 1.2)
43
- assert_equal(1.1, @pm.left)
44
- assert_equal(1.2, @pm.right)
45
- assert_equal(Axlsx::PageMargins::DEFAULT_TOP_BOTTOM, @pm.top)
46
- assert_equal(Axlsx::PageMargins::DEFAULT_TOP_BOTTOM, @pm.bottom)
47
- assert_equal(Axlsx::PageMargins::DEFAULT_HEADER_FOOTER, @pm.header)
48
- assert_equal(Axlsx::PageMargins::DEFAULT_HEADER_FOOTER, @pm.footer)
49
- end
50
-
51
- def test_to_xml
52
- @pm.left = 1.1
53
- @pm.right = 1.2
54
- @pm.top = 1.3
55
- @pm.bottom = 1.4
56
- @pm.header = 0.8
57
- @pm.footer = 0.9
58
- doc = Nokogiri::XML.parse(@pm.to_xml_string)
59
- assert_equal(1, doc.xpath(".//pageMargins[@left=1.1][@right=1.2][@top=1.3][@bottom=1.4][@header=0.8][@footer=0.9]").size)
60
- end
61
-
62
- def test_left
63
- assert_raise(ArgumentError) { @pm.left = -1.2 }
64
- assert_nothing_raised { @pm.left = 1.5 }
65
- assert_equal(@pm.left, 1.5)
66
- end
67
-
68
- def test_right
69
- assert_raise(ArgumentError) { @pm.right = -1.2 }
70
- assert_nothing_raised { @pm.right = 1.5 }
71
- assert_equal(@pm.right, 1.5)
72
- end
73
-
74
- def test_top
75
- assert_raise(ArgumentError) { @pm.top = -1.2 }
76
- assert_nothing_raised { @pm.top = 1.5 }
77
- assert_equal(@pm.top, 1.5)
78
- end
79
-
80
- def test_bottom
81
- assert_raise(ArgumentError) { @pm.bottom = -1.2 }
82
- assert_nothing_raised { @pm.bottom = 1.5 }
83
- assert_equal(@pm.bottom, 1.5)
84
- end
85
-
86
- def test_header
87
- assert_raise(ArgumentError) { @pm.header = -1.2 }
88
- assert_nothing_raised { @pm.header = 1.5 }
89
- assert_equal(@pm.header, 1.5)
90
- end
91
-
92
- def test_footer
93
- assert_raise(ArgumentError) { @pm.footer = -1.2 }
94
- assert_nothing_raised { @pm.footer = 1.5 }
95
- assert_equal(@pm.footer, 1.5)
96
- end
97
- end
1
+ require 'tc_helper.rb'
2
+
3
+ class TestPageMargins < Test::Unit::TestCase
4
+
5
+ def setup
6
+ p = Axlsx::Package.new
7
+ ws = p.workbook.add_worksheet :name=>"hmmm"
8
+ @pm = ws.page_margins
9
+ end
10
+
11
+ def test_initialize
12
+ assert_equal(Axlsx::PageMargins::DEFAULT_LEFT_RIGHT, @pm.left)
13
+ assert_equal(Axlsx::PageMargins::DEFAULT_LEFT_RIGHT, @pm.right)
14
+ assert_equal(Axlsx::PageMargins::DEFAULT_TOP_BOTTOM, @pm.top)
15
+ assert_equal(Axlsx::PageMargins::DEFAULT_TOP_BOTTOM, @pm.bottom)
16
+ assert_equal(Axlsx::PageMargins::DEFAULT_HEADER_FOOTER, @pm.header)
17
+ assert_equal(Axlsx::PageMargins::DEFAULT_HEADER_FOOTER, @pm.footer)
18
+ end
19
+
20
+ def test_initialize_with_options
21
+ optioned = Axlsx::PageMargins.new(:left => 2, :right => 3, :top => 2, :bottom => 1, :header => 0.1, :footer => 0.1)
22
+ assert_equal(2, optioned.left)
23
+ assert_equal(3, optioned.right)
24
+ assert_equal(2, optioned.top)
25
+ assert_equal(1, optioned.bottom)
26
+ assert_equal(0.1, optioned.header)
27
+ assert_equal(0.1, optioned.footer)
28
+ end
29
+
30
+
31
+ def test_set_all_values
32
+ @pm.set(:left => 1.1, :right => 1.2, :top => 1.3, :bottom => 1.4, :header => 0.8, :footer => 0.9)
33
+ assert_equal(1.1, @pm.left)
34
+ assert_equal(1.2, @pm.right)
35
+ assert_equal(1.3, @pm.top)
36
+ assert_equal(1.4, @pm.bottom)
37
+ assert_equal(0.8, @pm.header)
38
+ assert_equal(0.9, @pm.footer)
39
+ end
40
+
41
+ def test_set_some_values
42
+ @pm.set(:left => 1.1, :right => 1.2)
43
+ assert_equal(1.1, @pm.left)
44
+ assert_equal(1.2, @pm.right)
45
+ assert_equal(Axlsx::PageMargins::DEFAULT_TOP_BOTTOM, @pm.top)
46
+ assert_equal(Axlsx::PageMargins::DEFAULT_TOP_BOTTOM, @pm.bottom)
47
+ assert_equal(Axlsx::PageMargins::DEFAULT_HEADER_FOOTER, @pm.header)
48
+ assert_equal(Axlsx::PageMargins::DEFAULT_HEADER_FOOTER, @pm.footer)
49
+ end
50
+
51
+ def test_to_xml
52
+ @pm.left = 1.1
53
+ @pm.right = 1.2
54
+ @pm.top = 1.3
55
+ @pm.bottom = 1.4
56
+ @pm.header = 0.8
57
+ @pm.footer = 0.9
58
+ doc = Nokogiri::XML.parse(@pm.to_xml_string)
59
+ assert_equal(1, doc.xpath(".//pageMargins[@left=1.1][@right=1.2][@top=1.3][@bottom=1.4][@header=0.8][@footer=0.9]").size)
60
+ end
61
+
62
+ def test_left
63
+ assert_raise(ArgumentError) { @pm.left = -1.2 }
64
+ assert_nothing_raised { @pm.left = 1.5 }
65
+ assert_equal(@pm.left, 1.5)
66
+ end
67
+
68
+ def test_right
69
+ assert_raise(ArgumentError) { @pm.right = -1.2 }
70
+ assert_nothing_raised { @pm.right = 1.5 }
71
+ assert_equal(@pm.right, 1.5)
72
+ end
73
+
74
+ def test_top
75
+ assert_raise(ArgumentError) { @pm.top = -1.2 }
76
+ assert_nothing_raised { @pm.top = 1.5 }
77
+ assert_equal(@pm.top, 1.5)
78
+ end
79
+
80
+ def test_bottom
81
+ assert_raise(ArgumentError) { @pm.bottom = -1.2 }
82
+ assert_nothing_raised { @pm.bottom = 1.5 }
83
+ assert_equal(@pm.bottom, 1.5)
84
+ end
85
+
86
+ def test_header
87
+ assert_raise(ArgumentError) { @pm.header = -1.2 }
88
+ assert_nothing_raised { @pm.header = 1.5 }
89
+ assert_equal(@pm.header, 1.5)
90
+ end
91
+
92
+ def test_footer
93
+ assert_raise(ArgumentError) { @pm.footer = -1.2 }
94
+ assert_nothing_raised { @pm.footer = 1.5 }
95
+ assert_equal(@pm.footer, 1.5)
96
+ end
97
+ end
@@ -1,15 +1,15 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestPageSetUpPr < Test::Unit::TestCase
4
- def setup
5
- @page_setup_pr = Axlsx::PageSetUpPr.new(:fit_to_page => true, :auto_page_breaks => true)
6
- end
7
-
8
- def test_fit_to_page
9
- assert_equal true, @page_setup_pr.fit_to_page
10
- end
11
-
12
- def test_auto_page_breaks
13
- assert_equal true, @page_setup_pr.auto_page_breaks
14
- end
15
- end
1
+ require 'tc_helper.rb'
2
+
3
+ class TestPageSetUpPr < Test::Unit::TestCase
4
+ def setup
5
+ @page_setup_pr = Axlsx::PageSetUpPr.new(:fit_to_page => true, :auto_page_breaks => true)
6
+ end
7
+
8
+ def test_fit_to_page
9
+ assert_equal true, @page_setup_pr.fit_to_page
10
+ end
11
+
12
+ def test_auto_page_breaks
13
+ assert_equal true, @page_setup_pr.auto_page_breaks
14
+ end
15
+ end
@@ -1,143 +1,143 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestPageSetup < Test::Unit::TestCase
4
-
5
- def setup
6
- @p = Axlsx::Package.new
7
- ws = @p.workbook.add_worksheet :name => "hmmm"
8
- @ps = ws.page_setup
9
- end
10
-
11
- def test_initialize
12
- assert_equal(nil, @ps.fit_to_height)
13
- assert_equal(nil, @ps.fit_to_width)
14
- assert_equal(nil, @ps.orientation)
15
- assert_equal(nil, @ps.paper_height)
16
- assert_equal(nil, @ps.paper_width)
17
- assert_equal(nil, @ps.scale)
18
- end
19
-
20
- def test_initialize_with_options
21
- page_setup = { :fit_to_height => 1,
22
- :fit_to_width => 2,
23
- :orientation => :landscape,
24
- :paper_height => "297mm",
25
- :paper_width => "210mm",
26
- :scale => 50 }
27
-
28
- optioned = @p.workbook.add_worksheet(:name => 'optioned', :page_setup => page_setup).page_setup
29
- assert_equal(1, optioned.fit_to_height)
30
- assert_equal(2, optioned.fit_to_width)
31
- assert_equal(:landscape, optioned.orientation)
32
- assert_equal("297mm", optioned.paper_height)
33
- assert_equal("210mm", optioned.paper_width)
34
- assert_equal(50, optioned.scale)
35
- end
36
-
37
- def test_set_all_values
38
- @ps.set(:fit_to_height => 1, :fit_to_width => 2, :orientation => :landscape, :paper_height => "297mm", :paper_width => "210mm", :scale => 50)
39
- assert_equal(1, @ps.fit_to_height)
40
- assert_equal(2, @ps.fit_to_width)
41
- assert_equal(:landscape, @ps.orientation)
42
- assert_equal("297mm", @ps.paper_height)
43
- assert_equal("210mm", @ps.paper_width)
44
- assert_equal(50, @ps.scale)
45
- end
46
-
47
- def test_paper_size
48
- assert_raise(ArgumentError) { @ps.paper_size = 119 }
49
- assert_nothing_raised { @ps.paper_size = 10 }
50
- end
51
-
52
- def test_set_some_values
53
- @ps.set(:fit_to_width => 2, :orientation => :portrait)
54
- assert_equal(2, @ps.fit_to_width)
55
- assert_equal(:portrait, @ps.orientation)
56
- assert_equal(nil, @ps.fit_to_height)
57
- assert_equal(nil, @ps.paper_height)
58
- assert_equal(nil, @ps.paper_width)
59
- assert_equal(nil, @ps.scale)
60
- end
61
-
62
- def test_default_fit_to_page?
63
- assert(@ps.fit_to_width == nil && @ps.fit_to_height == nil)
64
- assert(@ps.fit_to_page? == false)
65
- end
66
-
67
- def test_with_height_fit_to_page?
68
- assert(@ps.fit_to_width == nil && @ps.fit_to_height == nil)
69
- @ps.set(:fit_to_height => 1)
70
- assert(@ps.fit_to_page?)
71
- end
72
-
73
- def test_with_width_fit_to_page?
74
- assert(@ps.fit_to_width == nil && @ps.fit_to_height == nil)
75
- @ps.set(:fit_to_width => 1)
76
- assert(@ps.fit_to_page?)
77
- end
78
-
79
- def test_to_xml_all_values
80
- @ps.set(:fit_to_height => 1, :fit_to_width => 2, :orientation => :landscape, :paper_height => "297mm", :paper_width => "210mm", :scale => 50)
81
- doc = Nokogiri::XML.parse(@ps.to_xml_string)
82
- assert_equal(1, doc.xpath(".//pageSetup[@fitToHeight='1'][@fitToWidth='2'][@orientation='landscape'][@paperHeight='297mm'][@paperWidth='210mm'][@scale='50']").size)
83
- end
84
-
85
- def test_to_xml_some_values
86
- @ps.set(:orientation => :portrait)
87
- doc = Nokogiri::XML.parse(@ps.to_xml_string)
88
- assert_equal(1, doc.xpath(".//pageSetup[@orientation='portrait']").size)
89
- assert_equal(0, doc.xpath(".//pageSetup[@fitToHeight]").size)
90
- assert_equal(0, doc.xpath(".//pageSetup[@fitToWidth]").size)
91
- assert_equal(0, doc.xpath(".//pageSetup[@paperHeight]").size)
92
- assert_equal(0, doc.xpath(".//pageSetup[@paperWidth]").size)
93
- assert_equal(0, doc.xpath(".//pageSetup[@scale]").size)
94
- end
95
-
96
- def test_fit_to_height
97
- assert_raise(ArgumentError) { @ps.fit_to_height = 1.5 }
98
- assert_nothing_raised { @ps.fit_to_height = 2 }
99
- assert_equal(2, @ps.fit_to_height)
100
- end
101
-
102
- def test_fit_to_width
103
- assert_raise(ArgumentError) { @ps.fit_to_width = false }
104
- assert_nothing_raised { @ps.fit_to_width = 1 }
105
- assert_equal(1, @ps.fit_to_width)
106
- end
107
-
108
- def test_orientation
109
- assert_raise(ArgumentError) { @ps.orientation = "" }
110
- assert_nothing_raised { @ps.orientation = :default }
111
- assert_equal(:default, @ps.orientation)
112
- end
113
-
114
- def test_paper_height
115
- assert_raise(ArgumentError) { @ps.paper_height = 99 }
116
- assert_nothing_raised { @ps.paper_height = "11in" }
117
- assert_equal("11in", @ps.paper_height)
118
- end
119
-
120
- def test_paper_width
121
- assert_raise(ArgumentError) { @ps.paper_width = "22" }
122
- assert_nothing_raised { @ps.paper_width = "29.7cm" }
123
- assert_equal("29.7cm", @ps.paper_width)
124
- end
125
-
126
- def test_scale
127
- assert_raise(ArgumentError) { @ps.scale = 50.5 }
128
- assert_nothing_raised { @ps.scale = 99 }
129
- assert_equal(99, @ps.scale)
130
- end
131
-
132
- def test_fit_to
133
- fits = @ps.fit_to(:width => 1)
134
- assert_equal([1, 999], fits)
135
- fits = @ps.fit_to :height => 1
136
- assert_equal(fits, [999 ,1])
137
- fits = @ps.fit_to :height => 7, :width => 2
138
- assert_equal(fits, [2, 7])
139
- assert_raise(ArgumentError) { puts @ps.fit_to(:width => true)}
140
-
141
-
142
- end
143
- end
1
+ require 'tc_helper.rb'
2
+
3
+ class TestPageSetup < Test::Unit::TestCase
4
+
5
+ def setup
6
+ @p = Axlsx::Package.new
7
+ ws = @p.workbook.add_worksheet :name => "hmmm"
8
+ @ps = ws.page_setup
9
+ end
10
+
11
+ def test_initialize
12
+ assert_equal(nil, @ps.fit_to_height)
13
+ assert_equal(nil, @ps.fit_to_width)
14
+ assert_equal(nil, @ps.orientation)
15
+ assert_equal(nil, @ps.paper_height)
16
+ assert_equal(nil, @ps.paper_width)
17
+ assert_equal(nil, @ps.scale)
18
+ end
19
+
20
+ def test_initialize_with_options
21
+ page_setup = { :fit_to_height => 1,
22
+ :fit_to_width => 2,
23
+ :orientation => :landscape,
24
+ :paper_height => "297mm",
25
+ :paper_width => "210mm",
26
+ :scale => 50 }
27
+
28
+ optioned = @p.workbook.add_worksheet(:name => 'optioned', :page_setup => page_setup).page_setup
29
+ assert_equal(1, optioned.fit_to_height)
30
+ assert_equal(2, optioned.fit_to_width)
31
+ assert_equal(:landscape, optioned.orientation)
32
+ assert_equal("297mm", optioned.paper_height)
33
+ assert_equal("210mm", optioned.paper_width)
34
+ assert_equal(50, optioned.scale)
35
+ end
36
+
37
+ def test_set_all_values
38
+ @ps.set(:fit_to_height => 1, :fit_to_width => 2, :orientation => :landscape, :paper_height => "297mm", :paper_width => "210mm", :scale => 50)
39
+ assert_equal(1, @ps.fit_to_height)
40
+ assert_equal(2, @ps.fit_to_width)
41
+ assert_equal(:landscape, @ps.orientation)
42
+ assert_equal("297mm", @ps.paper_height)
43
+ assert_equal("210mm", @ps.paper_width)
44
+ assert_equal(50, @ps.scale)
45
+ end
46
+
47
+ def test_paper_size
48
+ assert_raise(ArgumentError) { @ps.paper_size = 119 }
49
+ assert_nothing_raised { @ps.paper_size = 10 }
50
+ end
51
+
52
+ def test_set_some_values
53
+ @ps.set(:fit_to_width => 2, :orientation => :portrait)
54
+ assert_equal(2, @ps.fit_to_width)
55
+ assert_equal(:portrait, @ps.orientation)
56
+ assert_equal(nil, @ps.fit_to_height)
57
+ assert_equal(nil, @ps.paper_height)
58
+ assert_equal(nil, @ps.paper_width)
59
+ assert_equal(nil, @ps.scale)
60
+ end
61
+
62
+ def test_default_fit_to_page?
63
+ assert(@ps.fit_to_width == nil && @ps.fit_to_height == nil)
64
+ assert(@ps.fit_to_page? == false)
65
+ end
66
+
67
+ def test_with_height_fit_to_page?
68
+ assert(@ps.fit_to_width == nil && @ps.fit_to_height == nil)
69
+ @ps.set(:fit_to_height => 1)
70
+ assert(@ps.fit_to_page?)
71
+ end
72
+
73
+ def test_with_width_fit_to_page?
74
+ assert(@ps.fit_to_width == nil && @ps.fit_to_height == nil)
75
+ @ps.set(:fit_to_width => 1)
76
+ assert(@ps.fit_to_page?)
77
+ end
78
+
79
+ def test_to_xml_all_values
80
+ @ps.set(:fit_to_height => 1, :fit_to_width => 2, :orientation => :landscape, :paper_height => "297mm", :paper_width => "210mm", :scale => 50)
81
+ doc = Nokogiri::XML.parse(@ps.to_xml_string)
82
+ assert_equal(1, doc.xpath(".//pageSetup[@fitToHeight='1'][@fitToWidth='2'][@orientation='landscape'][@paperHeight='297mm'][@paperWidth='210mm'][@scale='50']").size)
83
+ end
84
+
85
+ def test_to_xml_some_values
86
+ @ps.set(:orientation => :portrait)
87
+ doc = Nokogiri::XML.parse(@ps.to_xml_string)
88
+ assert_equal(1, doc.xpath(".//pageSetup[@orientation='portrait']").size)
89
+ assert_equal(0, doc.xpath(".//pageSetup[@fitToHeight]").size)
90
+ assert_equal(0, doc.xpath(".//pageSetup[@fitToWidth]").size)
91
+ assert_equal(0, doc.xpath(".//pageSetup[@paperHeight]").size)
92
+ assert_equal(0, doc.xpath(".//pageSetup[@paperWidth]").size)
93
+ assert_equal(0, doc.xpath(".//pageSetup[@scale]").size)
94
+ end
95
+
96
+ def test_fit_to_height
97
+ assert_raise(ArgumentError) { @ps.fit_to_height = 1.5 }
98
+ assert_nothing_raised { @ps.fit_to_height = 2 }
99
+ assert_equal(2, @ps.fit_to_height)
100
+ end
101
+
102
+ def test_fit_to_width
103
+ assert_raise(ArgumentError) { @ps.fit_to_width = false }
104
+ assert_nothing_raised { @ps.fit_to_width = 1 }
105
+ assert_equal(1, @ps.fit_to_width)
106
+ end
107
+
108
+ def test_orientation
109
+ assert_raise(ArgumentError) { @ps.orientation = "" }
110
+ assert_nothing_raised { @ps.orientation = :default }
111
+ assert_equal(:default, @ps.orientation)
112
+ end
113
+
114
+ def test_paper_height
115
+ assert_raise(ArgumentError) { @ps.paper_height = 99 }
116
+ assert_nothing_raised { @ps.paper_height = "11in" }
117
+ assert_equal("11in", @ps.paper_height)
118
+ end
119
+
120
+ def test_paper_width
121
+ assert_raise(ArgumentError) { @ps.paper_width = "22" }
122
+ assert_nothing_raised { @ps.paper_width = "29.7cm" }
123
+ assert_equal("29.7cm", @ps.paper_width)
124
+ end
125
+
126
+ def test_scale
127
+ assert_raise(ArgumentError) { @ps.scale = 50.5 }
128
+ assert_nothing_raised { @ps.scale = 99 }
129
+ assert_equal(99, @ps.scale)
130
+ end
131
+
132
+ def test_fit_to
133
+ fits = @ps.fit_to(:width => 1)
134
+ assert_equal([1, 999], fits)
135
+ fits = @ps.fit_to :height => 1
136
+ assert_equal(fits, [999 ,1])
137
+ fits = @ps.fit_to :height => 7, :width => 2
138
+ assert_equal(fits, [2, 7])
139
+ assert_raise(ArgumentError) { puts @ps.fit_to(:width => true)}
140
+
141
+
142
+ end
143
+ end
@@ -1,54 +1,54 @@
1
- # encoding: UTF-8
2
- $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../../"
3
- require 'tc_helper.rb'
4
-
5
- class TestPane < Test::Unit::TestCase
6
- def setup
7
- #inverse defaults for booleans
8
- @nil_options = { :active_pane => :bottom_left, :state => :frozen, :top_left_cell => 'A2' }
9
- @int_0_options = { :x_split => 2, :y_split => 2 }
10
- @options = @nil_options.merge(@int_0_options)
11
- @pane = Axlsx::Pane.new(@options)
12
- end
13
-
14
-
15
- def test_active_pane
16
- assert_raise(ArgumentError) { @pane.active_pane = "10" }
17
- assert_nothing_raised { @pane.active_pane = :top_left }
18
- assert_equal(@pane.active_pane, "topLeft")
19
- end
20
-
21
- def test_state
22
- assert_raise(ArgumentError) { @pane.state = "foo" }
23
- assert_nothing_raised { @pane.state = :frozen_split }
24
- assert_equal(@pane.state, "frozenSplit")
25
- end
26
-
27
- def test_x_split
28
- assert_raise(ArgumentError) { @pane.x_split = "foo´" }
29
- assert_nothing_raised { @pane.x_split = 200 }
30
- assert_equal(@pane.x_split, 200)
31
- end
32
-
33
- def test_y_split
34
- assert_raise(ArgumentError) { @pane.y_split = 'foo' }
35
- assert_nothing_raised { @pane.y_split = 300 }
36
- assert_equal(@pane.y_split, 300)
37
- end
38
-
39
- def test_top_left_cell
40
- assert_raise(ArgumentError) { @pane.top_left_cell = :cell }
41
- assert_nothing_raised { @pane.top_left_cell = "A2" }
42
- assert_equal(@pane.top_left_cell, "A2")
43
- end
44
-
45
- def test_to_xml
46
- doc = Nokogiri::XML.parse(@pane.to_xml_string)
47
- assert_equal(1, doc.xpath("//pane[@ySplit=2][@xSplit='2'][@topLeftCell='A2'][@state='frozen'][@activePane='bottomLeft']").size)
48
- end
49
- def test_to_xml_frozen
50
- pane = Axlsx::Pane.new :state => :frozen, :y_split => 2
51
- doc = Nokogiri::XML(pane.to_xml_string)
52
- assert_equal(1, doc.xpath("//pane[@topLeftCell='A3']").size)
53
- end
54
- end
1
+ # encoding: UTF-8
2
+ $LOAD_PATH.unshift "#{File.dirname(__FILE__)}/../../"
3
+ require 'tc_helper.rb'
4
+
5
+ class TestPane < Test::Unit::TestCase
6
+ def setup
7
+ #inverse defaults for booleans
8
+ @nil_options = { :active_pane => :bottom_left, :state => :frozen, :top_left_cell => 'A2' }
9
+ @int_0_options = { :x_split => 2, :y_split => 2 }
10
+ @options = @nil_options.merge(@int_0_options)
11
+ @pane = Axlsx::Pane.new(@options)
12
+ end
13
+
14
+
15
+ def test_active_pane
16
+ assert_raise(ArgumentError) { @pane.active_pane = "10" }
17
+ assert_nothing_raised { @pane.active_pane = :top_left }
18
+ assert_equal(@pane.active_pane, "topLeft")
19
+ end
20
+
21
+ def test_state
22
+ assert_raise(ArgumentError) { @pane.state = "foo" }
23
+ assert_nothing_raised { @pane.state = :frozen_split }
24
+ assert_equal(@pane.state, "frozenSplit")
25
+ end
26
+
27
+ def test_x_split
28
+ assert_raise(ArgumentError) { @pane.x_split = "foo´" }
29
+ assert_nothing_raised { @pane.x_split = 200 }
30
+ assert_equal(@pane.x_split, 200)
31
+ end
32
+
33
+ def test_y_split
34
+ assert_raise(ArgumentError) { @pane.y_split = 'foo' }
35
+ assert_nothing_raised { @pane.y_split = 300 }
36
+ assert_equal(@pane.y_split, 300)
37
+ end
38
+
39
+ def test_top_left_cell
40
+ assert_raise(ArgumentError) { @pane.top_left_cell = :cell }
41
+ assert_nothing_raised { @pane.top_left_cell = "A2" }
42
+ assert_equal(@pane.top_left_cell, "A2")
43
+ end
44
+
45
+ def test_to_xml
46
+ doc = Nokogiri::XML.parse(@pane.to_xml_string)
47
+ assert_equal(1, doc.xpath("//pane[@ySplit=2][@xSplit='2'][@topLeftCell='A2'][@state='frozen'][@activePane='bottomLeft']").size)
48
+ end
49
+ def test_to_xml_frozen
50
+ pane = Axlsx::Pane.new :state => :frozen, :y_split => 2
51
+ doc = Nokogiri::XML(pane.to_xml_string)
52
+ assert_equal(1, doc.xpath("//pane[@topLeftCell='A3']").size)
53
+ end
54
+ end