axlsx 1.0.6 → 1.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. data/CHANGELOG.md +32 -0
  2. data/README.md +34 -35
  3. data/Rakefile +19 -8
  4. data/doc/Axlsx.html +4 -4
  5. data/doc/Axlsx/App.html +1 -1
  6. data/doc/Axlsx/Axis.html +45 -19
  7. data/doc/Axlsx/Bar3DChart.html +134 -107
  8. data/doc/Axlsx/BarSeries.html +6 -64
  9. data/doc/Axlsx/Border.html +1 -1
  10. data/doc/Axlsx/BorderPr.html +1 -1
  11. data/doc/Axlsx/CatAxis.html +34 -31
  12. data/doc/Axlsx/CatAxisData.html +400 -0
  13. data/doc/Axlsx/Cell.html +1 -1
  14. data/doc/Axlsx/CellAlignment.html +1 -1
  15. data/doc/Axlsx/CellProtection.html +1 -1
  16. data/doc/Axlsx/CellStyle.html +1 -1
  17. data/doc/Axlsx/Chart.html +449 -212
  18. data/doc/Axlsx/Color.html +1 -1
  19. data/doc/Axlsx/ContentType.html +2 -2
  20. data/doc/Axlsx/Core.html +1 -1
  21. data/doc/Axlsx/DataTypeValidator.html +1 -1
  22. data/doc/Axlsx/Default.html +1 -1
  23. data/doc/Axlsx/Drawing.html +65 -91
  24. data/doc/Axlsx/Fill.html +1 -1
  25. data/doc/Axlsx/Font.html +1 -1
  26. data/doc/Axlsx/GradientFill.html +1 -1
  27. data/doc/Axlsx/GradientStop.html +1 -1
  28. data/doc/Axlsx/GraphicFrame.html +7 -5
  29. data/doc/Axlsx/Line3DChart.html +109 -28
  30. data/doc/Axlsx/LineSeries.html +17 -73
  31. data/doc/Axlsx/Marker.html +1 -1
  32. data/doc/Axlsx/NumFmt.html +1 -1
  33. data/doc/Axlsx/Override.html +1 -1
  34. data/doc/Axlsx/Package.html +1 -1
  35. data/doc/Axlsx/PatternFill.html +1 -1
  36. data/doc/Axlsx/Pie3DChart.html +118 -66
  37. data/doc/Axlsx/PieSeries.html +30 -89
  38. data/doc/Axlsx/RegexValidator.html +1 -1
  39. data/doc/Axlsx/Relationship.html +1 -1
  40. data/doc/Axlsx/Relationships.html +2 -2
  41. data/doc/Axlsx/RestrictionValidator.html +1 -1
  42. data/doc/Axlsx/Row.html +1 -1
  43. data/doc/Axlsx/Scaling.html +1 -1
  44. data/doc/Axlsx/SerAxis.html +52 -37
  45. data/doc/Axlsx/Series.html +25 -10
  46. data/doc/Axlsx/SeriesTitle.html +3 -2
  47. data/doc/Axlsx/SimpleTypedList.html +86 -17
  48. data/doc/Axlsx/Styles.html +1 -1
  49. data/doc/Axlsx/TableStyle.html +2 -2
  50. data/doc/Axlsx/TableStyleElement.html +1 -1
  51. data/doc/Axlsx/TableStyles.html +2 -2
  52. data/doc/Axlsx/Title.html +1 -1
  53. data/doc/Axlsx/TwoCellAnchor.html +40 -280
  54. data/doc/Axlsx/ValAxis.html +7 -8
  55. data/doc/Axlsx/ValAxisData.html +326 -0
  56. data/doc/Axlsx/View3D.html +39 -39
  57. data/doc/Axlsx/Workbook.html +1 -1
  58. data/doc/Axlsx/Worksheet.html +84 -39
  59. data/doc/Axlsx/Xf.html +1 -1
  60. data/doc/_index.html +15 -1
  61. data/doc/class_list.html +1 -1
  62. data/doc/file.README.html +30 -49
  63. data/doc/index.html +30 -49
  64. data/doc/method_list.html +448 -416
  65. data/doc/top-level-namespace.html +1 -1
  66. data/examples/#example.rb# +87 -0
  67. data/examples/example.rb +4 -1
  68. data/examples/multi_chart.xlsx +0 -0
  69. data/lib/axlsx/drawing/#bar_series.rb# +62 -0
  70. data/lib/axlsx/drawing/axis.rb +7 -6
  71. data/lib/axlsx/drawing/bar_3D_chart.rb +12 -30
  72. data/lib/axlsx/drawing/bar_series.rb +6 -35
  73. data/lib/axlsx/drawing/cat_axis.rb +8 -10
  74. data/lib/axlsx/drawing/cat_axis_data.rb +34 -0
  75. data/lib/axlsx/drawing/cat_axis_data.rb~ +28 -0
  76. data/lib/axlsx/drawing/chart.rb +48 -21
  77. data/lib/axlsx/drawing/drawing.rb +14 -12
  78. data/lib/axlsx/drawing/graphic_frame.rb +1 -0
  79. data/lib/axlsx/drawing/line_3D_chart.rb +11 -1
  80. data/lib/axlsx/drawing/line_series.rb +10 -40
  81. data/lib/axlsx/drawing/pie_3D_chart.rb +17 -34
  82. data/lib/axlsx/drawing/pie_series.rb +11 -45
  83. data/lib/axlsx/drawing/ser_axis.rb +13 -14
  84. data/lib/axlsx/drawing/series.rb +2 -3
  85. data/lib/axlsx/drawing/series_title.rb +1 -1
  86. data/lib/axlsx/drawing/two_cell_anchor.rb +10 -34
  87. data/lib/axlsx/drawing/val_axis.rb +4 -4
  88. data/lib/axlsx/drawing/val_axis_data.rb +28 -0
  89. data/lib/axlsx/drawing/val_axis_data.rb~ +29 -0
  90. data/lib/axlsx/drawing/view_3D.rb +12 -6
  91. data/lib/axlsx/util/constants.rb +0 -3
  92. data/lib/axlsx/util/simple_typed_list.rb +7 -2
  93. data/lib/axlsx/version.rb +4 -0
  94. data/lib/axlsx/workbook/worksheet/worksheet.rb +9 -1
  95. data/test/drawing/tc_axis.rb +1 -0
  96. data/test/drawing/tc_cat_axis_data.rb +18 -0
  97. data/test/drawing/tc_cat_axis_data.rb~ +32 -0
  98. data/test/drawing/tc_chart.rb +12 -0
  99. data/test/drawing/tc_line_series.rb +27 -0
  100. data/test/drawing/{tc_line_series.tc → tc_line_series.rb~} +0 -0
  101. data/test/drawing/tc_ser_axis.rb +13 -5
  102. data/test/drawing/tc_two_cell_anchor.rb +18 -17
  103. data/test/drawing/tc_val_axis.rb +5 -0
  104. data/test/drawing/tc_val_axis_data.rb +18 -0
  105. data/test/drawing/tc_val_axis_data.rb~ +18 -0
  106. data/test/drawing/tc_view_3D.rb +10 -1
  107. data/test/tc_package.rb +13 -13
  108. metadata +21 -6
@@ -8,16 +8,24 @@ class TestSerAxis < Test::Unit::TestCase
8
8
  def teardown
9
9
  end
10
10
 
11
+ def test_options
12
+ a = Axlsx::SerAxis.new 12345, 54321, :tickLblSkip => 9, :tickMarkSkip => 7
13
+ assert_equal(a.tickLblSkip, 9)
14
+ assert_equal(a.tickMarkSkip, 7)
15
+ end
16
+
17
+
11
18
  def test_tickLblSkip
12
- assert_raise(ArgumentError, "requires valid tickLblSkip") { @axis.tickLblSkip = :my_eyes }
13
- assert_nothing_raised("accepts valid tickLblSkip") { @axis.tickLblSkip = false }
14
- assert_equal(@axis.tickLblSkip, false)
19
+ assert_raise(ArgumentError, "requires valid tickLblSkip") { @axis.tickLblSkip = -1 }
20
+ assert_nothing_raised("accepts valid tickLblSkip") { @axis.tickLblSkip = 1 }
21
+ assert_equal(@axis.tickLblSkip, 1)
15
22
  end
16
23
 
24
+
17
25
  def test_tickMarkSkip
18
26
  assert_raise(ArgumentError, "requires valid tickMarkSkip") { @axis.tickMarkSkip = :my_eyes }
19
- assert_nothing_raised("accepts valid tickMarkSkip") { @axis.tickMarkSkip = false }
20
- assert_equal(@axis.tickMarkSkip, false)
27
+ assert_nothing_raised("accepts valid tickMarkSkip") { @axis.tickMarkSkip = 2 }
28
+ assert_equal(@axis.tickMarkSkip, 2)
21
29
  end
22
30
 
23
31
  end
@@ -2,13 +2,14 @@ require 'test/unit'
2
2
  require 'axlsx.rb'
3
3
 
4
4
  class TestTwoCellAnchor < Test::Unit::TestCase
5
+
5
6
  def setup
6
- @p = Axlsx::Package.new
7
- ws = @p.workbook.add_worksheet
8
- @row = ws.add_row ["one", 1, Time.now]
9
- @title = Axlsx::Title.new
10
- @chart = ws.add_chart Axlsx::Bar3DChart
11
- @anchor = @chart.graphic_frame.anchor
7
+ p = Axlsx::Package.new
8
+ @ws = p.workbook.add_worksheet
9
+ row = @ws.add_row ["one", 1, Time.now]
10
+ title = Axlsx::Title.new
11
+ chart = @ws.add_chart Axlsx::Bar3DChart
12
+ @anchor = chart.graphic_frame.anchor
12
13
  end
13
14
 
14
15
  def teardown
@@ -20,18 +21,18 @@ class TestTwoCellAnchor < Test::Unit::TestCase
20
21
  assert(@anchor.to.col == 5)
21
22
  assert(@anchor.to.row == 10)
22
23
  end
24
+
23
25
 
24
- def test_start_at
25
- @anchor.start_at 5, 10
26
- assert(@anchor.from.col == 5)
27
- assert(@anchor.from.row == 10)
28
- end
29
-
30
- def test_end_at
31
- @anchor.end_at 10, 15
32
- assert(@anchor.to.col == 10)
33
- assert(@anchor.to.row == 15)
26
+ def test_options
27
+ assert_raise(ArgumentError, 'invalid start_at') { @ws.add_chart Axlsx::Chart, :start_at=>[1] }
28
+ assert_raise(ArgumentError, 'invalid end_at') { @ws.add_chart Axlsx::Chart, :start_at=>[1,2], :end_at => ["a", 4] }
29
+ # this is actually raised in the graphic frame
30
+ assert_raise(ArgumentError, 'invalid Chart') { @ws.add_chart Axlsx::TwoCellAnchor }
31
+ a = @ws.add_chart Axlsx::Chart, :start_at => [15, 35], :end_at => [90, 45]
32
+ assert_equal(a.graphic_frame.anchor.from.col, 15)
33
+ assert_equal(a.graphic_frame.anchor.from.row, 35)
34
+ assert_equal(a.graphic_frame.anchor.to.col, 90)
35
+ assert_equal(a.graphic_frame.anchor.to.row, 45)
34
36
  end
35
-
36
37
 
37
38
  end
@@ -12,6 +12,11 @@ class TestValAxis < Test::Unit::TestCase
12
12
  assert_equal(@axis.crossBetween, :between, "axis crossBetween default incorrect")
13
13
  end
14
14
 
15
+ def test_options
16
+ a = Axlsx::ValAxis.new 2345, 4321, :crossBetween => :midCat
17
+ assert_equal(a.crossBetween, :midCat)
18
+ end
19
+
15
20
  def test_crossBetween
16
21
  assert_raise(ArgumentError, "requires valid crossBetween") { @axis.crossBetween = :my_eyes }
17
22
  assert_nothing_raised("accepts valid crossBetween") { @axis.crossBetween = :midCat }
@@ -0,0 +1,18 @@
1
+ require 'test/unit'
2
+ require 'axlsx.rb'
3
+
4
+ class TestValAxisData < Test::Unit::TestCase
5
+
6
+ def setup
7
+ p = Axlsx::Package.new
8
+ @ws = p.workbook.add_worksheet
9
+ chart = @ws.drawing.add_chart Axlsx::Line3DChart
10
+ @series = chart.add_series :data=>[0,1,2]
11
+ end
12
+
13
+ def test_initialize
14
+ assert(@series.data.is_a?Axlsx::SimpleTypedList)
15
+ assert_equal(@series.data, [0,1,2])
16
+ end
17
+
18
+ end
@@ -0,0 +1,18 @@
1
+ require 'test/unit'
2
+ require 'axlsx.rb'
3
+
4
+ class TestValAxisData < Test::Unit::TestCase
5
+
6
+ def setup
7
+ p = Axlsx::Package.new
8
+ @ws = p.workbook.add_worksheet :name=>"hmmm"
9
+ chart = @ws.drawing.add_chart Axlsx::Bar3DChart, :title => "fishery"
10
+ @series = chart.add_series :data=>[0,1,2], :labels=>["zero", "one", "two"], :title=>"bob"
11
+ end
12
+
13
+ def test_initialize
14
+ assert(@series.data.is_a?Axlsx::SimpleTypedList)
15
+ assert_equal(@series.data, [0,1,2], "data option applied")
16
+ end
17
+
18
+ end
@@ -8,7 +8,16 @@ class TestView3D < Test::Unit::TestCase
8
8
 
9
9
  def teardown
10
10
  end
11
-
11
+
12
+ def test_options
13
+ v = Axlsx::View3D.new :rotX => 10, :rotY => 5, :hPercent => "30%", :depthPercent => "45%", :rAngAx => false, :perspective => 10
14
+ assert_equal(v.rotX, 10)
15
+ assert_equal(v.rotY, 5)
16
+ assert_equal(v.hPercent, "30%")
17
+ assert_equal(v.depthPercent, "45%")
18
+ assert_equal(v.rAngAx, false)
19
+ assert_equal(v.perspective, 10)
20
+ end
12
21
 
13
22
  def test_rotX
14
23
  assert_raise(ArgumentError) {@view.rotX = "bob"}
@@ -18,19 +18,19 @@ class TestPackage < Test::Unit::TestCase
18
18
 
19
19
  # TODO this test needs better file access validation!
20
20
  # as does serialization!
21
- # def test_serialization
22
- # fname = 'test_serialization.xlsx'
23
- # assert_nothing_raised do
24
- # if File::writable?(fname)
25
- # z= @package.serialize(fname)
26
- # zf = Zip::ZipFile.open(fname)
27
- # @package.send(:parts).each{ |part| zf.get_entry(part[:entry]) }
28
- # File.delete(fname)
29
- # else
30
- # puts "Skipping write to disk as write permission is not granted to this user"
31
- # end
32
- # end
33
- # end
21
+ def test_serialization
22
+ fname = 'axlsx_test_serialization.xlsx'
23
+ assert_nothing_raised do
24
+ begin
25
+ z= @package.serialize(fname)
26
+ zf = Zip::ZipFile.open(fname)
27
+ @package.send(:parts).each{ |part| zf.get_entry(part[:entry]) }
28
+ File.delete(fname)
29
+ rescue Errno::EACCES
30
+ puts "WARNING:: test_serialization requires write access."
31
+ end
32
+ end
33
+ end
34
34
 
35
35
  def test_validation
36
36
  assert_equal(@package.validate.size, 0, @package.validate)
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: axlsx
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 25
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 0
9
- - 6
10
- version: 1.0.6
9
+ - 7
10
+ version: 1.0.7
11
11
  platform: ruby
12
12
  authors:
13
13
  - Randy Morgan
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-11-22 00:00:00 Z
18
+ date: 2011-11-23 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: nokogiri
@@ -76,7 +76,7 @@ dependencies:
76
76
  version: 0.9.4
77
77
  type: :runtime
78
78
  version_requirements: *id004
79
- description: " axslx allows you to easily and skillfully create Office Open XML Spreadsheet documents. It supports multiple worksheets, custom styles, cusomizable charts and allows you to validate your xlsx package before serialization. \n"
79
+ description: " axslx allows you to create Office Open XML Spreadsheet documents.\n It supports automated column widths, multiple worksheets, custom styles, cusomizable charts and allows you to validate your xlsx package before serialization. \n"
80
80
  email: digital.ipeseity@gmail.com
81
81
  executables: []
82
82
 
@@ -93,6 +93,7 @@ files:
93
93
  - doc/Axlsx/Border.html
94
94
  - doc/Axlsx/BorderPr.html
95
95
  - doc/Axlsx/CatAxis.html
96
+ - doc/Axlsx/CatAxisData.html
96
97
  - doc/Axlsx/Cell.html
97
98
  - doc/Axlsx/CellAlignment.html
98
99
  - doc/Axlsx/CellProtection.html
@@ -135,6 +136,7 @@ files:
135
136
  - doc/Axlsx/Title.html
136
137
  - doc/Axlsx/TwoCellAnchor.html
137
138
  - doc/Axlsx/ValAxis.html
139
+ - doc/Axlsx/ValAxisData.html
138
140
  - doc/Axlsx/View3D.html
139
141
  - doc/Axlsx/Workbook.html
140
142
  - doc/Axlsx/Worksheet.html
@@ -163,6 +165,7 @@ files:
163
165
  - lib/axlsx/doc_props/app.rb~
164
166
  - lib/axlsx/doc_props/core.rb
165
167
  - lib/axlsx/doc_props/core.rb~
168
+ - lib/axlsx/drawing/#bar_series.rb#
166
169
  - lib/axlsx/drawing/axis.rb
167
170
  - lib/axlsx/drawing/axis.rb~
168
171
  - lib/axlsx/drawing/bar_3D_chart.rb
@@ -171,6 +174,8 @@ files:
171
174
  - lib/axlsx/drawing/bar_series.rb~
172
175
  - lib/axlsx/drawing/cat_axis.rb
173
176
  - lib/axlsx/drawing/cat_axis.rb~
177
+ - lib/axlsx/drawing/cat_axis_data.rb
178
+ - lib/axlsx/drawing/cat_axis_data.rb~
174
179
  - lib/axlsx/drawing/chart.rb
175
180
  - lib/axlsx/drawing/chart.rb~
176
181
  - lib/axlsx/drawing/drawing.rb
@@ -201,6 +206,8 @@ files:
201
206
  - lib/axlsx/drawing/two_cell_anchor.rb~
202
207
  - lib/axlsx/drawing/val_axis.rb
203
208
  - lib/axlsx/drawing/val_axis.rb~
209
+ - lib/axlsx/drawing/val_axis_data.rb
210
+ - lib/axlsx/drawing/val_axis_data.rb~
204
211
  - lib/axlsx/drawing/view_3D.rb
205
212
  - lib/axlsx/drawing/view_3D.rb~
206
213
  - lib/axlsx/package.rb
@@ -251,6 +258,7 @@ files:
251
258
  - lib/axlsx/util/validators.rb
252
259
  - lib/axlsx/util/validators.rb~
253
260
  - lib/axlsx/util/xml_escape.rb~
261
+ - lib/axlsx/version.rb
254
262
  - lib/axlsx/workbook/workbook.rb
255
263
  - lib/axlsx/workbook/workbook.rb~
256
264
  - lib/axlsx/workbook/worksheet/cell.rb
@@ -316,6 +324,8 @@ files:
316
324
  - test/drawing/tc_bar_series.rb~
317
325
  - test/drawing/tc_cat_axis.rb
318
326
  - test/drawing/tc_cat_axis.rb~
327
+ - test/drawing/tc_cat_axis_data.rb
328
+ - test/drawing/tc_cat_axis_data.rb~
319
329
  - test/drawing/tc_chart.rb
320
330
  - test/drawing/tc_chart.rb~
321
331
  - test/drawing/tc_drawing.rb
@@ -323,7 +333,8 @@ files:
323
333
  - test/drawing/tc_graphic_frame.rb~
324
334
  - test/drawing/tc_line_3d_chart.rb
325
335
  - test/drawing/tc_line_3d_chart.rb~
326
- - test/drawing/tc_line_series.tc
336
+ - test/drawing/tc_line_series.rb
337
+ - test/drawing/tc_line_series.rb~
327
338
  - test/drawing/tc_line_series.tc~
328
339
  - test/drawing/tc_marker.rb
329
340
  - test/drawing/tc_marker.rb~
@@ -345,6 +356,8 @@ files:
345
356
  - test/drawing/tc_two_cell_anchor.rb~
346
357
  - test/drawing/tc_val_axis.rb
347
358
  - test/drawing/tc_val_axis.rb~
359
+ - test/drawing/tc_val_axis_data.rb
360
+ - test/drawing/tc_val_axis_data.rb~
348
361
  - test/drawing/tc_view_3D.rb
349
362
  - test/drawing/tc_view_3D.rb~
350
363
  - test/rels/tc_relationship.rb
@@ -402,12 +415,14 @@ files:
402
415
  - test/workbook/worksheet/tc_row.rb~
403
416
  - test/workbook/worksheet/tc_worksheet.rb
404
417
  - test/workbook/worksheet/tc_worksheet.rb~
418
+ - examples/#example.rb#
405
419
  - examples/example.rb
406
420
  - examples/example.rb~
407
421
  - examples/multi_chart.xlsx
408
422
  - LICENSE
409
423
  - README.md
410
424
  - Rakefile
425
+ - CHANGELOG.md
411
426
  homepage: https://github.com/randym/axlsx
412
427
  licenses: []
413
428