caxlsx 3.2.0 → 3.3.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 (300) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +9 -9
  3. data/.yardopts_guide +18 -18
  4. data/CHANGELOG.md +385 -354
  5. data/LICENSE +21 -21
  6. data/README.md +165 -168
  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 -148
  21. data/lib/axlsx/drawing/bar_chart.rb +138 -138
  22. data/lib/axlsx/drawing/bar_series.rb +97 -97
  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 +299 -276
  27. data/lib/axlsx/drawing/d_lbls.rb +91 -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 -129
  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 +107 -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 +398 -388
  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 -73
  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 +535 -494
  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 +416 -410
  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 +425 -395
  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/border_creator.rb +76 -0
  98. data/lib/axlsx/workbook/worksheet/break.rb +35 -35
  99. data/lib/axlsx/workbook/worksheet/cell.rb +532 -506
  100. data/lib/axlsx/workbook/worksheet/cell_serializer.rb +164 -164
  101. data/lib/axlsx/workbook/worksheet/cfvo.rb +60 -60
  102. data/lib/axlsx/workbook/worksheet/cfvos.rb +18 -18
  103. data/lib/axlsx/workbook/worksheet/col.rb +145 -145
  104. data/lib/axlsx/workbook/worksheet/col_breaks.rb +35 -35
  105. data/lib/axlsx/workbook/worksheet/color_scale.rb +110 -110
  106. data/lib/axlsx/workbook/worksheet/cols.rb +23 -23
  107. data/lib/axlsx/workbook/worksheet/comment.rb +91 -91
  108. data/lib/axlsx/workbook/worksheet/comments.rb +82 -82
  109. data/lib/axlsx/workbook/worksheet/conditional_formatting.rb +82 -82
  110. data/lib/axlsx/workbook/worksheet/conditional_formatting_rule.rb +220 -220
  111. data/lib/axlsx/workbook/worksheet/conditional_formattings.rb +25 -25
  112. data/lib/axlsx/workbook/worksheet/data_bar.rb +129 -129
  113. data/lib/axlsx/workbook/worksheet/data_validation.rb +267 -246
  114. data/lib/axlsx/workbook/worksheet/data_validations.rb +28 -28
  115. data/lib/axlsx/workbook/worksheet/date_time_converter.rb +30 -30
  116. data/lib/axlsx/workbook/worksheet/dimension.rb +64 -64
  117. data/lib/axlsx/workbook/worksheet/header_footer.rb +52 -52
  118. data/lib/axlsx/workbook/worksheet/icon_set.rb +81 -81
  119. data/lib/axlsx/workbook/worksheet/merged_cells.rb +37 -37
  120. data/lib/axlsx/workbook/worksheet/outline_pr.rb +33 -33
  121. data/lib/axlsx/workbook/worksheet/page_margins.rb +97 -97
  122. data/lib/axlsx/workbook/worksheet/page_set_up_pr.rb +44 -44
  123. data/lib/axlsx/workbook/worksheet/page_setup.rb +240 -240
  124. data/lib/axlsx/workbook/worksheet/pane.rb +139 -139
  125. data/lib/axlsx/workbook/worksheet/pivot_table.rb +335 -296
  126. data/lib/axlsx/workbook/worksheet/pivot_table_cache_definition.rb +66 -66
  127. data/lib/axlsx/workbook/worksheet/pivot_tables.rb +24 -24
  128. data/lib/axlsx/workbook/worksheet/print_options.rb +39 -39
  129. data/lib/axlsx/workbook/worksheet/protected_range.rb +47 -47
  130. data/lib/axlsx/workbook/worksheet/protected_ranges.rb +37 -37
  131. data/lib/axlsx/workbook/worksheet/rich_text.rb +55 -55
  132. data/lib/axlsx/workbook/worksheet/rich_text_run.rb +250 -250
  133. data/lib/axlsx/workbook/worksheet/row.rb +164 -164
  134. data/lib/axlsx/workbook/worksheet/row_breaks.rb +33 -33
  135. data/lib/axlsx/workbook/worksheet/selection.rb +101 -101
  136. data/lib/axlsx/workbook/worksheet/sheet_calc_pr.rb +29 -29
  137. data/lib/axlsx/workbook/worksheet/sheet_data.rb +27 -27
  138. data/lib/axlsx/workbook/worksheet/sheet_pr.rb +87 -87
  139. data/lib/axlsx/workbook/worksheet/sheet_protection.rb +118 -118
  140. data/lib/axlsx/workbook/worksheet/sheet_view.rb +213 -213
  141. data/lib/axlsx/workbook/worksheet/table.rb +102 -102
  142. data/lib/axlsx/workbook/worksheet/table_style_info.rb +49 -49
  143. data/lib/axlsx/workbook/worksheet/tables.rb +34 -34
  144. data/lib/axlsx/workbook/worksheet/worksheet.rb +829 -786
  145. data/lib/axlsx/workbook/worksheet/worksheet_comments.rb +58 -58
  146. data/lib/axlsx/workbook/worksheet/worksheet_drawing.rb +58 -58
  147. data/lib/axlsx/workbook/worksheet/worksheet_hyperlink.rb +74 -74
  148. data/lib/axlsx/workbook/worksheet/worksheet_hyperlinks.rb +38 -38
  149. data/lib/axlsx.rb +204 -185
  150. data/lib/caxlsx.rb +2 -2
  151. data/lib/schema/dc.xsd +118 -118
  152. data/lib/schema/dcmitype.xsd +51 -51
  153. data/lib/schema/dcterms.xsd +331 -331
  154. data/lib/schema/dml-chartDrawing.xsd +146 -146
  155. data/lib/schema/dml-compatibility.xsd +14 -14
  156. data/lib/schema/dml-lockedCanvas.xsd +11 -11
  157. data/lib/schema/dml-main.xsd +3048 -3048
  158. data/lib/schema/dml-picture.xsd +23 -23
  159. data/lib/schema/dml-spreadsheetDrawing.xsd +185 -185
  160. data/lib/schema/dml-wordprocessingDrawing.xsd +185 -185
  161. data/lib/schema/shared-additionalCharacteristics.xsd +28 -28
  162. data/lib/schema/shared-bibliography.xsd +144 -144
  163. data/lib/schema/shared-commonSimpleTypes.xsd +166 -166
  164. data/lib/schema/shared-customXmlDataProperties.xsd +25 -25
  165. data/lib/schema/shared-customXmlSchemaProperties.xsd +18 -18
  166. data/lib/schema/shared-documentPropertiesCustom.xsd +59 -59
  167. data/lib/schema/shared-documentPropertiesExtended.xsd +56 -56
  168. data/lib/schema/shared-documentPropertiesVariantTypes.xsd +195 -195
  169. data/lib/schema/shared-relationshipReference.xsd +25 -25
  170. data/lib/schema/vml-main.xsd +569 -569
  171. data/lib/schema/vml-officeDrawing.xsd +509 -509
  172. data/lib/schema/vml-presentationDrawing.xsd +12 -12
  173. data/lib/schema/vml-spreadsheetDrawing.xsd +108 -108
  174. data/lib/schema/vml-wordprocessingDrawing.xsd +96 -96
  175. data/lib/schema/xml.xsd +116 -116
  176. metadata +5 -252
  177. data/test/benchmark.rb +0 -72
  178. data/test/content_type/tc_content_type.rb +0 -76
  179. data/test/content_type/tc_default.rb +0 -16
  180. data/test/content_type/tc_override.rb +0 -14
  181. data/test/doc_props/tc_app.rb +0 -43
  182. data/test/doc_props/tc_core.rb +0 -42
  183. data/test/drawing/tc_area_chart.rb +0 -39
  184. data/test/drawing/tc_area_series.rb +0 -71
  185. data/test/drawing/tc_axes.rb +0 -8
  186. data/test/drawing/tc_axis.rb +0 -112
  187. data/test/drawing/tc_bar_3D_chart.rb +0 -86
  188. data/test/drawing/tc_bar_chart.rb +0 -86
  189. data/test/drawing/tc_bar_series.rb +0 -46
  190. data/test/drawing/tc_bubble_chart.rb +0 -44
  191. data/test/drawing/tc_bubble_series.rb +0 -21
  192. data/test/drawing/tc_cat_axis.rb +0 -31
  193. data/test/drawing/tc_cat_axis_data.rb +0 -27
  194. data/test/drawing/tc_chart.rb +0 -123
  195. data/test/drawing/tc_d_lbls.rb +0 -57
  196. data/test/drawing/tc_data_source.rb +0 -23
  197. data/test/drawing/tc_drawing.rb +0 -80
  198. data/test/drawing/tc_graphic_frame.rb +0 -27
  199. data/test/drawing/tc_hyperlink.rb +0 -64
  200. data/test/drawing/tc_line_3d_chart.rb +0 -47
  201. data/test/drawing/tc_line_chart.rb +0 -39
  202. data/test/drawing/tc_line_series.rb +0 -71
  203. data/test/drawing/tc_marker.rb +0 -44
  204. data/test/drawing/tc_named_axis_data.rb +0 -27
  205. data/test/drawing/tc_num_data.rb +0 -31
  206. data/test/drawing/tc_num_val.rb +0 -29
  207. data/test/drawing/tc_one_cell_anchor.rb +0 -66
  208. data/test/drawing/tc_pic.rb +0 -103
  209. data/test/drawing/tc_picture_locking.rb +0 -72
  210. data/test/drawing/tc_pie_3D_chart.rb +0 -28
  211. data/test/drawing/tc_pie_series.rb +0 -33
  212. data/test/drawing/tc_scaling.rb +0 -36
  213. data/test/drawing/tc_scatter_chart.rb +0 -48
  214. data/test/drawing/tc_scatter_series.rb +0 -74
  215. data/test/drawing/tc_ser_axis.rb +0 -31
  216. data/test/drawing/tc_series.rb +0 -23
  217. data/test/drawing/tc_series_title.rb +0 -54
  218. data/test/drawing/tc_str_data.rb +0 -18
  219. data/test/drawing/tc_str_val.rb +0 -30
  220. data/test/drawing/tc_title.rb +0 -70
  221. data/test/drawing/tc_two_cell_anchor.rb +0 -36
  222. data/test/drawing/tc_val_axis.rb +0 -24
  223. data/test/drawing/tc_view_3D.rb +0 -54
  224. data/test/drawing/tc_vml_drawing.rb +0 -25
  225. data/test/drawing/tc_vml_shape.rb +0 -106
  226. data/test/fixtures/image1.gif +0 -0
  227. data/test/fixtures/image1.jpeg +0 -0
  228. data/test/fixtures/image1.jpg +0 -0
  229. data/test/fixtures/image1.png +0 -0
  230. data/test/fixtures/image1_fake.jpg +0 -0
  231. data/test/profile.rb +0 -24
  232. data/test/rels/tc_relationship.rb +0 -52
  233. data/test/rels/tc_relationships.rb +0 -37
  234. data/test/stylesheet/tc_border.rb +0 -37
  235. data/test/stylesheet/tc_border_pr.rb +0 -32
  236. data/test/stylesheet/tc_cell_alignment.rb +0 -81
  237. data/test/stylesheet/tc_cell_protection.rb +0 -29
  238. data/test/stylesheet/tc_cell_style.rb +0 -57
  239. data/test/stylesheet/tc_color.rb +0 -43
  240. data/test/stylesheet/tc_dxf.rb +0 -81
  241. data/test/stylesheet/tc_fill.rb +0 -18
  242. data/test/stylesheet/tc_font.rb +0 -133
  243. data/test/stylesheet/tc_gradient_fill.rb +0 -72
  244. data/test/stylesheet/tc_gradient_stop.rb +0 -31
  245. data/test/stylesheet/tc_num_fmt.rb +0 -30
  246. data/test/stylesheet/tc_pattern_fill.rb +0 -43
  247. data/test/stylesheet/tc_styles.rb +0 -309
  248. data/test/stylesheet/tc_table_style.rb +0 -44
  249. data/test/stylesheet/tc_table_style_element.rb +0 -45
  250. data/test/stylesheet/tc_table_styles.rb +0 -29
  251. data/test/stylesheet/tc_xf.rb +0 -120
  252. data/test/tc_axlsx.rb +0 -109
  253. data/test/tc_helper.rb +0 -10
  254. data/test/tc_package.rb +0 -317
  255. data/test/util/tc_mime_type_utils.rb +0 -13
  256. data/test/util/tc_serialized_attributes.rb +0 -19
  257. data/test/util/tc_simple_typed_list.rb +0 -77
  258. data/test/util/tc_validators.rb +0 -210
  259. data/test/workbook/tc_defined_name.rb +0 -49
  260. data/test/workbook/tc_shared_strings_table.rb +0 -59
  261. data/test/workbook/tc_workbook.rb +0 -165
  262. data/test/workbook/tc_workbook_view.rb +0 -50
  263. data/test/workbook/worksheet/auto_filter/tc_auto_filter.rb +0 -38
  264. data/test/workbook/worksheet/auto_filter/tc_filter_column.rb +0 -76
  265. data/test/workbook/worksheet/auto_filter/tc_filters.rb +0 -50
  266. data/test/workbook/worksheet/tc_break.rb +0 -49
  267. data/test/workbook/worksheet/tc_cell.rb +0 -465
  268. data/test/workbook/worksheet/tc_cfvo.rb +0 -31
  269. data/test/workbook/worksheet/tc_col.rb +0 -93
  270. data/test/workbook/worksheet/tc_color_scale.rb +0 -58
  271. data/test/workbook/worksheet/tc_comment.rb +0 -72
  272. data/test/workbook/worksheet/tc_comments.rb +0 -57
  273. data/test/workbook/worksheet/tc_conditional_formatting.rb +0 -224
  274. data/test/workbook/worksheet/tc_data_bar.rb +0 -46
  275. data/test/workbook/worksheet/tc_data_validation.rb +0 -265
  276. data/test/workbook/worksheet/tc_date_time_converter.rb +0 -124
  277. data/test/workbook/worksheet/tc_header_footer.rb +0 -151
  278. data/test/workbook/worksheet/tc_icon_set.rb +0 -45
  279. data/test/workbook/worksheet/tc_outline_pr.rb +0 -19
  280. data/test/workbook/worksheet/tc_page_margins.rb +0 -97
  281. data/test/workbook/worksheet/tc_page_set_up_pr.rb +0 -15
  282. data/test/workbook/worksheet/tc_page_setup.rb +0 -143
  283. data/test/workbook/worksheet/tc_pane.rb +0 -54
  284. data/test/workbook/worksheet/tc_pivot_table.rb +0 -180
  285. data/test/workbook/worksheet/tc_pivot_table_cache_definition.rb +0 -62
  286. data/test/workbook/worksheet/tc_print_options.rb +0 -72
  287. data/test/workbook/worksheet/tc_protected_range.rb +0 -17
  288. data/test/workbook/worksheet/tc_rich_text.rb +0 -44
  289. data/test/workbook/worksheet/tc_rich_text_run.rb +0 -173
  290. data/test/workbook/worksheet/tc_row.rb +0 -160
  291. data/test/workbook/worksheet/tc_selection.rb +0 -55
  292. data/test/workbook/worksheet/tc_sheet_calc_pr.rb +0 -18
  293. data/test/workbook/worksheet/tc_sheet_format_pr.rb +0 -88
  294. data/test/workbook/worksheet/tc_sheet_pr.rb +0 -49
  295. data/test/workbook/worksheet/tc_sheet_protection.rb +0 -117
  296. data/test/workbook/worksheet/tc_sheet_view.rb +0 -214
  297. data/test/workbook/worksheet/tc_table.rb +0 -77
  298. data/test/workbook/worksheet/tc_table_style_info.rb +0 -53
  299. data/test/workbook/worksheet/tc_worksheet.rb +0 -632
  300. data/test/workbook/worksheet/tc_worksheet_hyperlink.rb +0 -55
@@ -1,27 +0,0 @@
1
- # require 'tc_helper.rb'
2
-
3
- # class TestCatAxisData < Test::Unit::TestCase
4
-
5
- # def setup
6
- # p = Axlsx::Package.new
7
- # @ws = p.workbook.add_worksheet
8
- # @chart = @ws.drawing.add_chart Axlsx::Bar3DChart
9
- # @series = @chart.add_series :labels=>["zero", "one", "two"]
10
- # end
11
-
12
- # def test_initialize
13
- # assert(@series.labels.is_a?Axlsx::SimpleTypedList)
14
- # assert_equal(@series.labels, ["zero", "one", "two"])
15
- # end
16
-
17
- # def test_to_xml_string
18
- # doc = Nokogiri::XML(@chart.to_xml_string)
19
- # assert_equal(doc.xpath("//c:cat/c:strRef/c:f").size,1)
20
- # assert_equal(doc.xpath("//c:strCache/c:ptCount[@val='#{@series.labels.size}']").size,1)
21
- # @series.labels.each_with_index do |label, index|
22
- # assert_equal(doc.xpath("//c:strCache/c:pt[@idx='#{index}']").size,1)
23
- # assert_equal(doc.xpath("//c:strCache/c:pt/c:v[text()='#{label}']").size,1)
24
- # end
25
- # end
26
-
27
- # end
@@ -1,123 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestChart < Test::Unit::TestCase
4
-
5
- def setup
6
- @p = Axlsx::Package.new
7
- ws = @p.workbook.add_worksheet
8
- @row = ws.add_row ["one", 1, Time.now]
9
- @chart = ws.add_chart Axlsx::Bar3DChart, :title => "fishery", :bg_color => "000000"
10
- end
11
-
12
- def teardown
13
- end
14
-
15
- def test_initialization
16
- assert_equal(@p.workbook.charts.last,@chart, "the chart is in the workbook")
17
- assert_equal(@chart.title.text, "fishery", "the title option has been applied")
18
- assert((@chart.series.is_a?(Axlsx::SimpleTypedList) && @chart.series.empty?), "The series is initialized and empty")
19
- end
20
-
21
- def test_title
22
- @chart.title.text = 'wowzer'
23
- assert_equal(@chart.title.text, "wowzer", "the title text via a string")
24
- assert_equal(@chart.title.cell, nil, "the title cell is nil as we set the title with text.")
25
- @chart.title = @row.cells.first
26
- assert_equal(@chart.title.text, "one", "the title text was set via cell reference")
27
- assert_equal(@chart.title.cell, @row.cells.first)
28
- end
29
-
30
- def test_style
31
- assert_raise(ArgumentError) { @chart.style = 49 }
32
- assert_nothing_raised { @chart.style = 2 }
33
- assert_equal(@chart.style, 2)
34
- end
35
-
36
- def test_to_from_marker_access
37
- assert(@chart.to.is_a?(Axlsx::Marker))
38
- assert(@chart.from.is_a?(Axlsx::Marker))
39
- end
40
-
41
- def test_bg_color
42
- assert_raise(ArgumentError) { @chart.bg_color = 2 }
43
- assert_nothing_raised { @chart.bg_color = "FFFFFF" }
44
- assert_equal(@chart.bg_color, "FFFFFF")
45
-
46
- end
47
-
48
- def test_title_size
49
- assert_raise(ArgumentError) { @chart.title_size = 2 }
50
- assert_nothing_raised { @chart.title_size = "100" }
51
- assert_equal(@chart.title.text_size, "100")
52
- end
53
-
54
- def test_vary_colors
55
- assert_equal(true, @chart.vary_colors)
56
- assert_raise(ArgumentError) { @chart.vary_colors = 7 }
57
- assert_nothing_raised { @chart.vary_colors = false }
58
- assert_equal(false, @chart.vary_colors)
59
- end
60
-
61
- def test_display_blanks_as
62
- assert_equal(:gap, @chart.display_blanks_as, "default is not :gap")
63
- assert_raise(ArgumentError, "did not validate possible values") { @chart.display_blanks_as = :hole }
64
- assert_nothing_raised { @chart.display_blanks_as = :zero }
65
- assert_nothing_raised { @chart.display_blanks_as = :span }
66
- assert_equal(:span, @chart.display_blanks_as)
67
- end
68
-
69
- def test_start_at
70
- @chart.start_at 15, 25
71
- assert_equal(@chart.graphic_frame.anchor.from.col, 15)
72
- assert_equal(@chart.graphic_frame.anchor.from.row, 25)
73
- @chart.start_at @row.cells.first
74
- assert_equal(@chart.graphic_frame.anchor.from.col, 0)
75
- assert_equal(@chart.graphic_frame.anchor.from.row, 0)
76
- @chart.start_at [5,6]
77
- assert_equal(@chart.graphic_frame.anchor.from.col, 5)
78
- assert_equal(@chart.graphic_frame.anchor.from.row, 6)
79
-
80
- end
81
-
82
- def test_end_at
83
- @chart.end_at 25, 90
84
- assert_equal(@chart.graphic_frame.anchor.to.col, 25)
85
- assert_equal(@chart.graphic_frame.anchor.to.row, 90)
86
- @chart.end_at @row.cells.last
87
- assert_equal(@chart.graphic_frame.anchor.to.col, 2)
88
- assert_equal(@chart.graphic_frame.anchor.to.row, 0)
89
- @chart.end_at [10,11]
90
- assert_equal(@chart.graphic_frame.anchor.to.col, 10)
91
- assert_equal(@chart.graphic_frame.anchor.to.row, 11)
92
-
93
- end
94
-
95
- def test_add_series
96
- s = @chart.add_series :data=>[0,1,2,3], :labels => ["one", 1, "anything"], :title=>"bob"
97
- assert_equal(@chart.series.last, s, "series has been added to chart series collection")
98
- assert_equal(s.title.text, "bob", "series title has been applied")
99
- end
100
-
101
- def test_pn
102
- assert_equal(@chart.pn, "charts/chart1.xml")
103
- end
104
-
105
- def test_d_lbls
106
- assert_equal(nil, @chart.instance_values[:d_lbls])
107
- @chart.d_lbls.d_lbl_pos = :t
108
- assert(@chart.d_lbls.is_a?(Axlsx::DLbls), 'DLbls instantiated on access')
109
- end
110
-
111
- def test_to_xml_string
112
- schema = Nokogiri::XML::Schema(File.open(Axlsx::DRAWING_XSD))
113
- doc = Nokogiri::XML(@chart.to_xml_string)
114
- errors = schema.validate(doc).map { |error| puts error.message; error }
115
- assert(errors.empty?, "error free validation")
116
- end
117
-
118
- def test_to_xml_string_for_display_blanks_as
119
- @chart.display_blanks_as = :span
120
- doc = Nokogiri::XML(@chart.to_xml_string)
121
- assert_equal("span", doc.xpath("//c:dispBlanksAs").attr("val").value, "did not use the display_blanks_as configuration")
122
- end
123
- end
@@ -1,57 +0,0 @@
1
- require 'tc_helper'
2
-
3
- class TestDLbls < Test::Unit::TestCase
4
-
5
- def setup
6
- @d_lbls = Axlsx::DLbls.new(Axlsx::Pie3DChart)
7
- @boolean_attributes =[:show_legend_key,
8
- :show_val,
9
- :show_cat_name,
10
- :show_ser_name,
11
- :show_percent,
12
- :show_bubble_size,
13
- :show_leader_lines]
14
- end
15
-
16
- def test_initialization
17
- assert_equal(:bestFit, @d_lbls.d_lbl_pos)
18
- @boolean_attributes.each do |attr|
19
- assert_equal(false, @d_lbls.send(attr))
20
- end
21
- end
22
-
23
- def test_initialization_with_optoins
24
-
25
- options_hash = Hash[*[@boolean_attributes.map { |name| [name, true] }] ]
26
-
27
- d_lbls = Axlsx::DLbls.new(Axlsx::Pie3DChart, options_hash.merge( { :d_lbl_pos => :t }))
28
-
29
- @boolean_attributes.each do |attr|
30
- assert_equal(true, d_lbls.send(attr), "boolean attributes set by options")
31
- end
32
- assert_equal(:t, d_lbls.d_lbl_pos, "d_lbl_pos set by options")
33
- end
34
- def test_d_lbl_pos
35
- assert_raise(ArgumentError, 'invlaid label positions are rejected') { @d_lbls.d_lbl_pos = :upside_down }
36
- assert_nothing_raised('accepts valid label position') { @d_lbls.d_lbl_pos = :ctr }
37
- end
38
-
39
- def test_boolean_attributes
40
- @boolean_attributes.each do |attr|
41
- assert_raise(ArgumentError, "rejects non boolean value for #{attr}") { @d_lbls.send("#{attr}=", :foo) }
42
- assert_nothing_raised("accepts boolean value for #{attr}") { @d_lbls.send("#{attr}=", true) }
43
- assert_nothing_raised("accepts boolean value for #{attr}") { @d_lbls.send("#{attr}=", false) }
44
- end
45
- end
46
-
47
- def test_to_xml_string
48
- str = '<?xml version="1.0" encoding="UTF-8"?>'
49
- str << '<c:chartSpace xmlns:c="' << Axlsx::XML_NS_C << '" xmlns:a="' << Axlsx::XML_NS_A << '" xmlns:r="' << Axlsx::XML_NS_R << '">'
50
- @d_lbls.to_xml_string(str)
51
- str << '</c:chartSpace>'
52
- doc = Nokogiri::XML(str)
53
- @d_lbls.instance_values.each do |name, value|
54
- assert(doc.xpath("//c:#{Axlsx::camel(name, false)}[@val='#{value}']"), "#{name} is properly serialized")
55
- end
56
- end
57
- end
@@ -1,23 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestNumDataSource < Test::Unit::TestCase
4
-
5
- def setup
6
- @data_source = Axlsx::NumDataSource.new :data => ["1", "2", "3"]
7
- end
8
-
9
- def test_tag_name
10
- assert_raise(ArgumentError) { @data_source.tag_name = :zVal }
11
- assert_nothing_raised { @data_source.tag_name = :yVal }
12
- assert_nothing_raised { @data_source.tag_name = :bubbleSize }
13
- end
14
-
15
- def test_to_xml_string_strLit
16
- str = '<?xml version="1.0" encoding="UTF-8"?>'
17
- str << '<c:chartSpace xmlns:c="' << Axlsx::XML_NS_C << '">'
18
- str << @data_source.to_xml_string
19
- doc = Nokogiri::XML(str)
20
- assert_equal(doc.xpath("//c:val").size, 1)
21
- end
22
-
23
- end
@@ -1,80 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestDrawing < Test::Unit::TestCase
4
- def setup
5
- p = Axlsx::Package.new
6
- @ws = p.workbook.add_worksheet
7
-
8
- end
9
-
10
- def test_initialization
11
- assert(@ws.workbook.drawings.empty?)
12
- end
13
-
14
- def test_add_chart
15
- chart = @ws.add_chart(Axlsx::Pie3DChart, :title=>"bob", :start_at=>[0,0], :end_at=>[1,1])
16
- assert(chart.is_a?(Axlsx::Pie3DChart), "must create a chart")
17
- assert_equal(@ws.workbook.charts.last, chart, "must be added to workbook charts collection")
18
- assert_equal(@ws.drawing.anchors.last.object.chart, chart, "an anchor has been created and holds a reference to this chart")
19
- anchor = @ws.drawing.anchors.last
20
- assert_equal([anchor.from.row, anchor.from.col], [0,0], "options for start at are applied")
21
- assert_equal([anchor.to.row, anchor.to.col], [1,1], "options for start at are applied")
22
- assert_equal(chart.title.text, "bob", "option for title is applied")
23
- end
24
-
25
- def test_add_image
26
- src = File.dirname(__FILE__) + "/../fixtures/image1.jpeg"
27
- image = @ws.add_image(:image_src => src, :start_at=>[0,0], :width=>600, :height=>400)
28
- assert(@ws.drawing.anchors.last.is_a?(Axlsx::OneCellAnchor))
29
- assert(image.is_a?(Axlsx::Pic))
30
- assert_equal(600, image.width)
31
- assert_equal(400, image.height)
32
- end
33
- def test_add_two_cell_anchor_image
34
- src = File.dirname(__FILE__) + "/../fixtures/image1.jpeg"
35
- image = @ws.add_image(:image_src => src, :start_at=>[0,0], :end_at => [15,0])
36
- assert(@ws.drawing.anchors.last.is_a?(Axlsx::TwoCellAnchor))
37
- assert(image.is_a?(Axlsx::Pic))
38
- end
39
- def test_charts
40
- chart = @ws.add_chart(Axlsx::Pie3DChart, :title=>"bob", :start_at=>[0,0], :end_at=>[1,1])
41
- assert_equal(@ws.drawing.charts.last, chart, "add chart is returned")
42
- chart = @ws.add_chart(Axlsx::Pie3DChart, :title=>"nancy", :start_at=>[1,5], :end_at=>[5,10])
43
- assert_equal(@ws.drawing.charts.last, chart, "add chart is returned")
44
- end
45
-
46
- def test_pn
47
- @ws.add_chart(Axlsx::Pie3DChart)
48
- assert_equal(@ws.drawing.pn, "drawings/drawing1.xml")
49
- end
50
-
51
- def test_rels_pn
52
- @ws.add_chart(Axlsx::Pie3DChart)
53
- assert_equal(@ws.drawing.rels_pn, "drawings/_rels/drawing1.xml.rels")
54
- end
55
-
56
- def test_index
57
- @ws.add_chart(Axlsx::Pie3DChart)
58
- assert_equal(@ws.drawing.index, @ws.workbook.drawings.index(@ws.drawing))
59
- end
60
-
61
- def test_relationships
62
- @ws.add_chart(Axlsx::Pie3DChart, :title=>"bob", :start_at=>[0,0], :end_at=>[1,1])
63
- assert_equal(@ws.drawing.relationships.size, 1, "adding a chart adds a relationship")
64
- @ws.add_chart(Axlsx::Pie3DChart, :title=>"nancy", :start_at=>[1,5], :end_at=>[5,10])
65
- assert_equal(@ws.drawing.relationships.size, 2, "adding a chart adds a relationship")
66
- end
67
-
68
- def test_to_xml
69
- schema = Nokogiri::XML::Schema(File.open(Axlsx::DRAWING_XSD))
70
- @ws.add_chart(Axlsx::Pie3DChart)
71
- doc = Nokogiri::XML(@ws.drawing.to_xml_string)
72
- errors = []
73
- schema.validate(doc).each do |error|
74
- errors.push error
75
- puts error.message
76
- end
77
- assert(errors.empty?, "error free validation")
78
- end
79
-
80
- end
@@ -1,27 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestGraphicFrame < Test::Unit::TestCase
4
- def setup
5
- p = Axlsx::Package.new
6
- @ws = p.workbook.add_worksheet
7
- @chart = @ws.add_chart Axlsx::Chart
8
- @frame = @chart.graphic_frame
9
- end
10
-
11
- def teardown
12
- end
13
-
14
- def test_initialization
15
- assert(@frame.anchor.is_a?(Axlsx::TwoCellAnchor))
16
- assert_equal(@frame.chart, @chart)
17
- end
18
-
19
- def test_rId
20
- assert_equal @ws.drawing.relationships.for(@chart).Id, @frame.rId
21
- end
22
-
23
- def test_to_xml_has_correct_rId
24
- doc = Nokogiri::XML(@frame.to_xml_string)
25
- assert_equal @frame.rId, doc.xpath("//c:chart", doc.collect_namespaces).first["r:id"]
26
- end
27
- end
@@ -1,64 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestHyperlink < Test::Unit::TestCase
4
-
5
- def setup
6
- @p = Axlsx::Package.new
7
- ws = @p.workbook.add_worksheet
8
- @test_img = File.dirname(__FILE__) + "/../fixtures/image1.jpeg"
9
- @image = ws.add_image :image_src => @test_img, :hyperlink => "http://axlsx.blogspot.com"
10
- @hyperlink = @image.hyperlink
11
- end
12
-
13
- def teardown
14
- end
15
-
16
-
17
- def test_href
18
- assert_nothing_raised { @hyperlink.href = "http://axlsx.blogspot.com" }
19
- assert_equal(@hyperlink.href, "http://axlsx.blogspot.com")
20
- end
21
-
22
- def test_tgtFrame
23
- assert_nothing_raised { @hyperlink.tgtFrame = "http://axlsx.blogspot.com" }
24
- assert_equal(@hyperlink.tgtFrame, "http://axlsx.blogspot.com")
25
- end
26
-
27
- def test_tooltip
28
- assert_nothing_raised { @hyperlink.tooltip = "http://axlsx.blogspot.com" }
29
- assert_equal(@hyperlink.tooltip, "http://axlsx.blogspot.com")
30
- end
31
-
32
- def test_invalidUrl
33
- assert_nothing_raised { @hyperlink.invalidUrl = "http://axlsx.blogspot.com" }
34
- assert_equal(@hyperlink.invalidUrl, "http://axlsx.blogspot.com")
35
- end
36
-
37
- def test_action
38
- assert_nothing_raised { @hyperlink.action = "flee" }
39
- assert_equal(@hyperlink.action, "flee")
40
- end
41
-
42
- def test_endSnd
43
- assert_nothing_raised { @hyperlink.endSnd = "true" }
44
- assert_raise(ArgumentError) {@hyperlink.endSnd = "bob"}
45
- assert_equal(@hyperlink.endSnd, "true")
46
- end
47
-
48
- def test_highlightClick
49
- assert_nothing_raised { @hyperlink.highlightClick = false }
50
- assert_raise(ArgumentError) {@hyperlink.highlightClick = "bob"}
51
- assert_equal(@hyperlink.highlightClick, false )
52
- end
53
-
54
- def test_history
55
- assert_nothing_raised { @hyperlink.history = false }
56
- assert_raise(ArgumentError) {@hyperlink.history = "bob"}
57
- assert_equal(@hyperlink.history, false )
58
- end
59
-
60
- def test_to_xml_string
61
- doc = Nokogiri::XML(@p.workbook.worksheets.first.drawing.to_xml_string)
62
- assert(doc.xpath("//a:hlinkClick"))
63
- end
64
- end
@@ -1,47 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestLine3DChart < Test::Unit::TestCase
4
-
5
- def setup
6
- @p = Axlsx::Package.new
7
- ws = @p.workbook.add_worksheet
8
- @row = ws.add_row ["one", 1, Time.now]
9
- @chart = ws.add_chart Axlsx::Line3DChart, :title => "fishery"
10
- end
11
-
12
- def teardown
13
- end
14
-
15
- def test_initialization
16
- assert_equal(@chart.grouping, :standard, "grouping defualt incorrect")
17
- assert_equal(@chart.series_type, Axlsx::LineSeries, "series type incorrect")
18
- assert(@chart.catAxis.is_a?(Axlsx::CatAxis), "category axis not created")
19
- assert(@chart.valAxis.is_a?(Axlsx::ValAxis), "value access not created")
20
- assert(@chart.serAxis.is_a?(Axlsx::SerAxis), "value access not created")
21
- end
22
-
23
- def test_grouping
24
- assert_raise(ArgumentError, "require valid grouping") { @chart.grouping = :inverted }
25
- assert_nothing_raised("allow valid grouping") { @chart.grouping = :stacked }
26
- assert(@chart.grouping == :stacked)
27
- end
28
-
29
- def test_gapDepth
30
- assert_raise(ArgumentError, "require valid gapDepth") { @chart.gapDepth = 200 }
31
- assert_nothing_raised("allow valid gapDepth") { @chart.gapDepth = "200%" }
32
- assert(@chart.gapDepth == "200%")
33
- end
34
-
35
-
36
- def test_to_xml
37
- schema = Nokogiri::XML::Schema(File.open(Axlsx::DRAWING_XSD))
38
- doc = Nokogiri::XML(@chart.to_xml_string)
39
- errors = []
40
- schema.validate(doc).each do |error|
41
- errors.push error
42
- puts error.message
43
- end
44
- assert(errors.empty?, "error free validation")
45
- end
46
-
47
- end
@@ -1,39 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestLineChart < Test::Unit::TestCase
4
-
5
- def setup
6
- @p = Axlsx::Package.new
7
- ws = @p.workbook.add_worksheet
8
- @row = ws.add_row ["one", 1, Time.now]
9
- @chart = ws.add_chart Axlsx::LineChart, :title => "fishery"
10
- end
11
-
12
- def teardown
13
- end
14
-
15
- def test_initialization
16
- assert_equal(@chart.grouping, :standard, "grouping defualt incorrect")
17
- assert_equal(@chart.series_type, Axlsx::LineSeries, "series type incorrect")
18
- assert(@chart.cat_axis.is_a?(Axlsx::CatAxis), "category axis not created")
19
- assert(@chart.val_axis.is_a?(Axlsx::ValAxis), "value access not created")
20
- end
21
-
22
- def test_grouping
23
- assert_raise(ArgumentError, "require valid grouping") { @chart.grouping = :inverted }
24
- assert_nothing_raised("allow valid grouping") { @chart.grouping = :stacked }
25
- assert(@chart.grouping == :stacked)
26
- end
27
-
28
- def test_to_xml
29
- schema = Nokogiri::XML::Schema(File.open(Axlsx::DRAWING_XSD))
30
- doc = Nokogiri::XML(@chart.to_xml_string)
31
- errors = []
32
- schema.validate(doc).each do |error|
33
- errors.push error
34
- puts error.message
35
- end
36
- assert(errors.empty?, "error free validation")
37
- end
38
-
39
- end
@@ -1,71 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestLineSeries < Test::Unit::TestCase
4
-
5
- def setup
6
- p = Axlsx::Package.new
7
- @ws = p.workbook.add_worksheet :name=>"hmmm"
8
- chart = @ws.add_chart Axlsx::Line3DChart, :title => "fishery"
9
- @series = chart.add_series(
10
- :data => [0,1,2],
11
- :labels => ["zero", "one", "two"],
12
- :title => "bob",
13
- :color => "#FF0000",
14
- :show_marker => true,
15
- :smooth => true
16
- )
17
- end
18
-
19
- def test_initialize
20
- assert_equal(@series.title.text, "bob", "series title has been applied")
21
- assert_equal(@series.labels.class, Axlsx::AxDataSource)
22
- assert_equal(@series.data.class, Axlsx::NumDataSource)
23
- end
24
-
25
- def test_show_marker
26
- assert_equal(true, @series.show_marker)
27
- @series.show_marker = false
28
- assert_equal(false, @series.show_marker)
29
- end
30
-
31
- def test_smooth
32
- assert_equal(true, @series.smooth)
33
- @series.smooth = false
34
- assert_equal(false, @series.smooth)
35
- end
36
-
37
- def test_marker_symbol
38
- assert_equal(:default, @series.marker_symbol)
39
- @series.marker_symbol = :circle
40
- assert_equal(:circle, @series.marker_symbol)
41
- end
42
-
43
- def test_to_xml_string
44
- doc = Nokogiri::XML(wrap_with_namespaces(@series))
45
- assert(doc.xpath("//srgbClr[@val='#{@series.color}']"))
46
- assert_equal(xpath_with_namespaces(doc, "//c:marker").size, 0)
47
- assert(doc.xpath("//smooth"))
48
-
49
- @series.marker_symbol = :diamond
50
- doc = Nokogiri::XML(wrap_with_namespaces(@series))
51
- assert_equal(xpath_with_namespaces(doc, "//c:marker/c:symbol[@val='diamond']").size, 1)
52
-
53
- @series.show_marker = false
54
- doc = Nokogiri::XML(wrap_with_namespaces(@series))
55
- assert_equal(xpath_with_namespaces(doc, "//c:marker/c:symbol[@val='none']").size, 1)
56
- end
57
-
58
- def wrap_with_namespaces(series)
59
- '<c:chartSpace xmlns:c="' <<
60
- Axlsx::XML_NS_C <<
61
- '" xmlns:a="' <<
62
- Axlsx::XML_NS_A <<
63
- '">' <<
64
- series.to_xml_string <<
65
- '</c:chartSpace>'
66
- end
67
-
68
- def xpath_with_namespaces(doc, xpath)
69
- doc.xpath(xpath, "a" => Axlsx::XML_NS_A, "c" => Axlsx::XML_NS_C)
70
- end
71
- end
@@ -1,44 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestMarker < Test::Unit::TestCase
4
- def setup
5
- @marker = Axlsx::Marker.new
6
- end
7
-
8
- def teardown
9
- end
10
-
11
- def test_initialization
12
- assert(@marker.col == 0)
13
- assert(@marker.colOff == 0)
14
- assert(@marker.row == 0)
15
- assert(@marker.rowOff == 0)
16
- end
17
-
18
- def test_col
19
- assert_raise(ArgumentError) { @marker.col = -1}
20
- assert_nothing_raised {@marker.col = 10}
21
- end
22
-
23
- def test_colOff
24
- assert_raise(ArgumentError) { @marker.colOff = "1"}
25
- assert_nothing_raised {@marker.colOff = -10}
26
- end
27
-
28
- def test_row
29
- assert_raise(ArgumentError) { @marker.row = -1}
30
- assert_nothing_raised {@marker.row = 10}
31
- end
32
-
33
- def test_rowOff
34
- assert_raise(ArgumentError) { @marker.rowOff = "1"}
35
- assert_nothing_raised {@marker.rowOff = -10}
36
- end
37
-
38
- def test_coord
39
- @marker.coord 5, 10
40
- assert_equal(@marker.col, 5)
41
- assert_equal(@marker.row, 10)
42
- end
43
-
44
- end
@@ -1,27 +0,0 @@
1
- # require 'tc_helper.rb'
2
-
3
- # class TestNamedAxisData < Test::Unit::TestCase
4
-
5
- # def setup
6
- # p = Axlsx::Package.new
7
- # @ws = p.workbook.add_worksheet
8
- # @chart = @ws.drawing.add_chart Axlsx::Line3DChart
9
- # @series = @chart.add_series :data=>[0,1,2]
10
- # end
11
-
12
- # def test_initialize
13
- # assert(@series.data.is_a?Axlsx::SimpleTypedList)
14
- # assert_equal(@series.data, [0,1,2])
15
- # end
16
-
17
- # def test_to_xml_string
18
- # doc = Nokogiri::XML(@chart.to_xml_string)
19
- # assert_equal(doc.xpath("//c:val/c:numRef/c:f").size,1)
20
- # assert_equal(doc.xpath("//c:numCache/c:ptCount[@val='#{@series.data.size}']").size,1)
21
- # @series.data.each_with_index do |datum, index|
22
- # assert_equal(doc.xpath("//c:numCache/c:pt[@idx='#{index}']").size,1)
23
- # assert_equal(doc.xpath("//c:numCache/c:pt/c:v[text()='#{datum}']").size,1)
24
- # end
25
- # end
26
-
27
- # end
@@ -1,31 +0,0 @@
1
- require 'tc_helper.rb'
2
-
3
- class TestNumData < Test::Unit::TestCase
4
-
5
- def setup
6
- @num_data = Axlsx::NumData.new :data => [1, 2, 3]
7
- end
8
-
9
- def test_initialize
10
- assert_equal(@num_data.format_code, "General")
11
- end
12
-
13
- def test_formula_based_cell
14
-
15
- end
16
-
17
- def test_format_code
18
- assert_raise(ArgumentError) {@num_data.format_code = 7}
19
- assert_nothing_raised {@num_data.format_code = 'foo_bar'}
20
- end
21
-
22
- def test_to_xml_string
23
- str = '<?xml version="1.0" encoding="UTF-8"?>'
24
- str << '<c:chartSpace xmlns:c="' << Axlsx::XML_NS_C << '">'
25
- str << @num_data.to_xml_string
26
- doc = Nokogiri::XML(str)
27
- assert_equal(doc.xpath("//c:numLit/c:ptCount[@val=3]").size, 1)
28
- assert_equal(doc.xpath("//c:numLit/c:pt/c:v[text()='1']").size, 1)
29
- end
30
-
31
- end