writeexcel 1.0.5 → 1.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/test-suite.yml +26 -0
  3. data/README.rdoc +11 -2
  4. data/lib/writeexcel/biffwriter.rb +2 -1
  5. data/lib/writeexcel/cell_range.rb +1 -0
  6. data/lib/writeexcel/chart.rb +2 -3
  7. data/lib/writeexcel/charts/area.rb +1 -1
  8. data/lib/writeexcel/charts/pie.rb +1 -1
  9. data/lib/writeexcel/charts/scatter.rb +1 -1
  10. data/lib/writeexcel/charts/stock.rb +1 -1
  11. data/lib/writeexcel/col_info.rb +2 -2
  12. data/lib/writeexcel/comments.rb +2 -1
  13. data/lib/writeexcel/convert_date_time.rb +7 -7
  14. data/lib/writeexcel/excelformulaparser.rb +50 -50
  15. data/lib/writeexcel/format.rb +1 -1
  16. data/lib/writeexcel/formula.rb +1 -1
  17. data/lib/writeexcel/helper.rb +3 -3
  18. data/lib/writeexcel/properties.rb +1 -1
  19. data/lib/writeexcel/shared_string_table.rb +5 -5
  20. data/lib/writeexcel/storage_lite.rb +2 -9
  21. data/lib/writeexcel/version.rb +2 -4
  22. data/lib/writeexcel/workbook.rb +14 -25
  23. data/lib/writeexcel/worksheet.rb +73 -56
  24. data/lib/writeexcel/worksheets.rb +1 -2
  25. data/lib/writeexcel.rb +3 -5
  26. data/test/helper.rb +12 -4
  27. data/test/test_00_IEEE_double.rb +1 -1
  28. data/test/test_04_dimensions.rb +6 -6
  29. data/test/test_05_rows.rb +14 -17
  30. data/test/test_06_extsst.rb +8 -11
  31. data/test/test_11_date_time.rb +1 -1
  32. data/test/test_12_date_only.rb +1 -1
  33. data/test/test_13_date_seconds.rb +1 -1
  34. data/test/test_21_escher.rb +5 -5
  35. data/test/test_22_mso_drawing_group.rb +37 -40
  36. data/test/test_23_note.rb +5 -5
  37. data/test/test_24_txo.rb +5 -5
  38. data/test/test_25_position_object.rb +5 -5
  39. data/test/test_26_autofilter.rb +1 -1
  40. data/test/test_27_autofilter.rb +1 -1
  41. data/test/test_28_autofilter.rb +1 -1
  42. data/test/test_29_process_jpg.rb +1 -43
  43. data/test/test_30_validation_dval.rb +5 -5
  44. data/test/test_31_validation_dv_strings.rb +8 -8
  45. data/test/test_32_validation_dv_formula.rb +5 -5
  46. data/test/test_40_property_types.rb +1 -1
  47. data/test/test_41_properties.rb +1 -1
  48. data/test/test_42_set_properties.rb +30 -37
  49. data/test/test_50_name_stored.rb +1 -19
  50. data/test/test_51_name_print_area.rb +3 -13
  51. data/test/test_52_name_print_titles.rb +3 -21
  52. data/test/test_53_autofilter.rb +1 -5
  53. data/test/test_60_chart_generic.rb +3 -3
  54. data/test/test_61_chart_subclasses.rb +2 -1
  55. data/test/test_62_chart_formats.rb +9 -21
  56. data/test/test_63_chart_area_formats.rb +1 -1
  57. data/test/test_compatibility.rb +1 -1
  58. data/test/test_example_match.rb +835 -835
  59. data/test/test_format.rb +1 -114
  60. data/test/test_formula.rb +1 -1
  61. data/test/test_properties.rb +1 -2
  62. data/test/test_storage_lite.rb +2 -2
  63. data/test/test_workbook.rb +1 -66
  64. data/test/test_worksheet.rb +1 -18
  65. data/test/test_write_formula_does_not_change_formula_string.rb +1 -1
  66. data/writeexcel.gemspec +6 -3
  67. metadata +24 -21
  68. data/test/test_01_add_worksheet.rb +0 -43
  69. data/test/test_02_merge_formats.rb +0 -49
  70. data/test/test_biff.rb +0 -71
  71. data/test/test_big_workbook.rb +0 -17
  72. data/test/test_ole.rb +0 -102
@@ -13,7 +13,7 @@
13
13
  require 'helper'
14
14
  require 'stringio'
15
15
 
16
- class TC_Name_Print_Titles < Test::Unit::TestCase
16
+ class TC_Name_Print_Titles < Minitest::Test
17
17
  def setup
18
18
  @test_file = StringIO.new
19
19
  @workbook = WriteExcel.new(@test_file)
@@ -33,7 +33,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
33
33
  17 00 08 00 01 00 00 00 00 00 00 00
34
34
  ).join('')].pack('H*')
35
35
 
36
- caption = " \tExternsheet"
37
36
  result = _unpack_externsheet(@workbook.data)
38
37
  target = _unpack_externsheet(target)
39
38
  assert_equal(target, result)
@@ -47,7 +46,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
47
46
  00 00 00 07 3B 00 00 00 00 00 00 00 00 FF 00
48
47
  ).join('')].pack('H*')
49
48
 
50
- caption = " \t+ Name repeats ( Sheet1!1:1 )";
51
49
  result = _unpack_name(@workbook.data)
52
50
  target = _unpack_name(target)
53
51
  assert_equal(target, result)
@@ -66,7 +64,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
66
64
  17 00 08 00 01 00 00 00 00 00 00 00
67
65
  ).join('')].pack('H*')
68
66
 
69
- caption = " \tExternsheet"
70
67
  result = _unpack_externsheet(@workbook.data)
71
68
  target = _unpack_externsheet(target)
72
69
  assert_equal(target, result)
@@ -80,7 +77,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
80
77
  00 00 00 07 3B 00 00 00 00 09 00 00 00 FF 00
81
78
  ).join('')].pack('H*')
82
79
 
83
- caption = " \t+ Name repeats ( Sheet1!1:10 )";
84
80
  result = _unpack_name(@workbook.data)
85
81
  target = _unpack_name(target)
86
82
  assert_equal(target, result)
@@ -99,7 +95,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
99
95
  17 00 08 00 01 00 00 00 00 00 00 00
100
96
  ).join('')].pack('H*')
101
97
 
102
- caption = " \tExternsheet"
103
98
  result = _unpack_externsheet(@workbook.data)
104
99
  target = _unpack_externsheet(target)
105
100
  assert_equal(target, result)
@@ -113,7 +108,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
113
108
  00 00 00 07 3B 00 00 00 00 FF FF 00 00 00 00
114
109
  ).join('')].pack('H*')
115
110
 
116
- caption = " \t+ Name repeats ( Sheet1!A:A )";
117
111
  result = _unpack_name(@workbook.data)
118
112
  target = _unpack_name(target)
119
113
  assert_equal(target, result)
@@ -132,7 +126,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
132
126
  17 00 08 00 01 00 00 00 00 00 00 00
133
127
  ).join('')].pack('H*')
134
128
 
135
- caption = " \tExternsheet"
136
129
  result = _unpack_externsheet(@workbook.data)
137
130
  target = _unpack_externsheet(target)
138
131
  assert_equal(target, result)
@@ -146,7 +139,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
146
139
  00 00 00 07 3B 00 00 00 00 FF FF 00 00 00 00
147
140
  ).join('')].pack('H*')
148
141
 
149
- caption = " \t+ Name repeats ( Sheet1!A:A )";
150
142
  result = _unpack_name(@workbook.data)
151
143
  target = _unpack_name(target)
152
144
  assert_equal(target, result)
@@ -165,7 +157,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
165
157
  17 00 08 00 01 00 00 00 00 00 00 00
166
158
  ).join('')].pack('H*')
167
159
 
168
- caption = " \tExternsheet"
169
160
  result = _unpack_externsheet(@workbook.data)
170
161
  target = _unpack_externsheet(target)
171
162
  assert_equal(target, result)
@@ -179,7 +170,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
179
170
  00 00 00 07 3B 00 00 00 00 FF FF 00 00 09 00
180
171
  ).join('')].pack('H*')
181
172
 
182
- caption = " \t+ Name repeats ( Sheet1!A:J )";
183
173
  result = _unpack_name(@workbook.data)
184
174
  target = _unpack_name(target)
185
175
  assert_equal(target, result)
@@ -198,7 +188,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
198
188
  17 00 08 00 01 00 00 00 00 00 00 00
199
189
  ).join('')].pack('H*')
200
190
 
201
- caption = " \tExternsheet"
202
191
  result = _unpack_externsheet(@workbook.data)
203
192
  target = _unpack_externsheet(target)
204
193
  assert_equal(target, result)
@@ -212,7 +201,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
212
201
  00 00 00 07 3B 00 00 00 00 FF FF 00 00 09 00
213
202
  ).join('')].pack('H*')
214
203
 
215
- caption = " \t+ Name repeats ( Sheet1!A:J )";
216
204
  result = _unpack_name(@workbook.data)
217
205
  target = _unpack_name(target)
218
206
  assert_equal(target, result)
@@ -236,7 +224,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
236
224
  01 00 00 00 02 00 02 00
237
225
  ).join('')].pack('H*')
238
226
 
239
- caption = " \tExternsheet"
240
227
  result = _unpack_externsheet(@workbook.data)
241
228
  target = _unpack_externsheet(target)
242
229
  assert_equal(target, result)
@@ -256,7 +243,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
256
243
  00 00 00 07 3B 02 00 06 00 07 00 00 00 FF 00
257
244
  ).join('')].pack('H*')
258
245
 
259
- caption = " \t+ Name repeats ( Sheet1!1:2, Sheet2!4:5, Sheet3!7:8 )";
260
246
  result = _unpack_name(@workbook.data)
261
247
  target = _unpack_name(target)
262
248
  assert_equal(target, result)
@@ -264,9 +250,9 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
264
250
 
265
251
  def test_repeat_rows_on_multiple_sheets_with_sheets_spaced_out
266
252
  worksheet1 = @workbook.add_worksheet
267
- worksheet2 = @workbook.add_worksheet
253
+ @workbook.add_worksheet
268
254
  worksheet3 = @workbook.add_worksheet
269
- worksheet4 = @workbook.add_worksheet
255
+ @workbook.add_worksheet
270
256
  worksheet5 = @workbook.add_worksheet
271
257
 
272
258
  worksheet1.repeat_rows(0, 1)
@@ -282,7 +268,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
282
268
  02 00 00 00 04 00 04 00
283
269
  ).join('')].pack('H*')
284
270
 
285
- caption = " \tExternsheet"
286
271
  result = _unpack_externsheet(@workbook.data)
287
272
  target = _unpack_externsheet(target)
288
273
  assert_equal(target, result)
@@ -302,7 +287,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
302
287
  00 00 00 07 3B 02 00 06 00 07 00 00 00 FF 00
303
288
  ).join('')].pack('H*')
304
289
 
305
- caption = " \t+ Name repeats ( Sheet1!1:2, Sheet3!4:5, Sheet5!7:8 )";
306
290
  result = _unpack_name(@workbook.data)
307
291
  target = _unpack_name(target)
308
292
  assert_equal(target, result)
@@ -322,7 +306,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
322
306
  17 00 08 00 01 00 00 00 00 00 00 00
323
307
  ).join('')].pack('H*')
324
308
 
325
- caption = " \tExternsheet"
326
309
  result = _unpack_externsheet(@workbook.data)
327
310
  target = _unpack_externsheet(target)
328
311
  assert_equal(target, result)
@@ -337,7 +320,6 @@ class TC_Name_Print_Titles < Test::Unit::TestCase
337
320
  04 00 3B 00 00 01 00 02 00 00 00 FF 00 10
338
321
  ).join('')].pack('H*')
339
322
 
340
- caption = " \t+ Name repeats ( Sheet1!2:3, Sheet1!D:E )";
341
323
  result = _unpack_name(@workbook.data)
342
324
  target = _unpack_name(target)
343
325
  assert_equal(target, result)
@@ -13,7 +13,7 @@
13
13
  require 'helper'
14
14
  require 'stringio'
15
15
 
16
- class TC_autofilter < Test::Unit::TestCase
16
+ class TC_autofilter < Minitest::Test
17
17
  def setup
18
18
  @test_file = StringIO.new
19
19
  @workbook = WriteExcel.new(@test_file)
@@ -33,7 +33,6 @@ class TC_autofilter < Test::Unit::TestCase
33
33
  17 00 08 00 01 00 00 00 00 00 00 00
34
34
  ).join('')].pack('H*')
35
35
 
36
- caption = " \tExternsheet"
37
36
  result = _unpack_externsheet(@workbook.data)
38
37
  target = _unpack_externsheet(target)
39
38
  assert_equal(target, result)
@@ -47,7 +46,6 @@ class TC_autofilter < Test::Unit::TestCase
47
46
  00 00 00 0D 3B 00 00 00 00 04 00 00 00 02 00
48
47
  ).join('')].pack('H*')
49
48
 
50
- caption = " \t+ Name = autofilter ( Sheet1!A1:C5 )";
51
49
  result = _unpack_name(@workbook.data)
52
50
  target = _unpack_name(target)
53
51
  assert_equal(target, result)
@@ -69,7 +67,6 @@ class TC_autofilter < Test::Unit::TestCase
69
67
  01 00
70
68
  ).join('')].pack('H*')
71
69
 
72
- caption = " \tExternsheet"
73
70
  result = _unpack_externsheet(@workbook.data)
74
71
  target = _unpack_externsheet(target)
75
72
  assert_equal(target, result)
@@ -86,7 +83,6 @@ class TC_autofilter < Test::Unit::TestCase
86
83
  00 00 00 0D 3B 01 00 00 00 04 00 00 00 02 00
87
84
  ).join('')].pack('H*')
88
85
 
89
- caption = " \t+ Name = autofilter ( Sheet1!A1:C5, Sheet2!A1:C5 )";
90
86
  result = _unpack_name(@workbook.data)
91
87
  target = _unpack_name(target)
92
88
  assert_equal(target, result)
@@ -13,7 +13,7 @@ require 'stringio'
13
13
  # original written in Perl by John McNamara
14
14
  # converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
15
15
  #
16
- class TC_ChartGeneric < Test::Unit::TestCase
16
+ class TC_ChartGeneric < Minitest::Test
17
17
  def setup
18
18
  io = StringIO.new
19
19
  workbook = WriteExcel.new(io)
@@ -52,7 +52,7 @@ class TC_ChartGeneric < Test::Unit::TestCase
52
52
  values = [0x0000, 0x0000, 0x02DD51E0, 0x01C2B838]
53
53
  got = unpack_record(@chart.__send__("store_chart", *values))
54
54
  assert_equal(expected, got, caption)
55
- end
55
+ end
56
56
 
57
57
  ###############################################################################
58
58
  #
@@ -65,7 +65,7 @@ class TC_ChartGeneric < Test::Unit::TestCase
65
65
  ).join(' ')
66
66
  got = unpack_record(@chart.__send__("store_series", 8, 8))
67
67
  assert_equal(expected, got, caption)
68
- end
68
+ end
69
69
 
70
70
  ###############################################################################
71
71
  #
@@ -13,7 +13,8 @@ require 'stringio'
13
13
  # original written in Perl by John McNamara
14
14
  # converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
15
15
  #
16
- class TC_chart_subclasses < Test::Unit::TestCase
16
+ class TC_chart_subclasses < Minitest::Test
17
+
17
18
  def setup
18
19
  io = StringIO.new
19
20
  @workbook = WriteExcel.new(io)
@@ -13,7 +13,7 @@ require 'stringio'
13
13
  # original written in Perl by John McNamara
14
14
  # converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
15
15
  #
16
- class TC_ChartFormats < Test::Unit::TestCase
16
+ class TC_ChartFormats < Minitest::Test
17
17
  def setup
18
18
  @io = StringIO.new
19
19
  @workbook = WriteExcel.new(@io)
@@ -90,25 +90,19 @@ class TC_ChartFormats < Test::Unit::TestCase
90
90
  caption1 = " \tChart: index = get_color_indices(#{color})"
91
91
  caption2 = " \tChart: rgb = get_color_indices(#{color})"
92
92
 
93
- expected_index = nil
94
- expected_rgb = nil
95
-
96
93
  got_index, got_rgb = @chart.__send__("get_color_indices", color)
97
94
 
98
- assert_equal(expected_index, got_index, caption1)
99
- assert_equal(expected_rgb, got_rgb, caption2)
95
+ assert_nil(got_index, caption1)
96
+ assert_nil(got_rgb, caption2)
100
97
 
101
98
  color = 64
102
99
  caption1 = " \tChart: index = get_color_indices(#{color})"
103
100
  caption2 = " \tChart: rgb = get_color_indices(#{color})"
104
101
 
105
- expected_index = nil
106
- expected_rgb = nil
107
-
108
102
  got_index, got_rgb = @chart.__send__("get_color_indices", color)
109
103
 
110
- assert_equal(expected_index, got_index, caption1)
111
- assert_equal(expected_rgb, got_rgb, caption2)
104
+ assert_nil(got_index, caption1)
105
+ assert_nil(got_rgb, caption2)
112
106
  end
113
107
 
114
108
  ###############################################################################
@@ -120,13 +114,10 @@ class TC_ChartFormats < Test::Unit::TestCase
120
114
  caption1 = " \tChart: index = get_color_indices(#{color})"
121
115
  caption2 = " \tChart: rgb = get_color_indices(#{color})"
122
116
 
123
- expected_index = nil
124
- expected_rgb = nil
125
-
126
117
  got_index, got_rgb = @chart.__send__("get_color_indices", color)
127
118
 
128
- assert_equal(expected_index, got_index, caption1)
129
- assert_equal(expected_rgb, got_rgb, caption2)
119
+ assert_nil(got_index, caption1)
120
+ assert_nil(got_rgb, caption2)
130
121
  end
131
122
 
132
123
  ###############################################################################
@@ -138,13 +129,10 @@ class TC_ChartFormats < Test::Unit::TestCase
138
129
  caption1 = " \tChart: index = get_color_indices(#{color})"
139
130
  caption2 = " \tChart: rgb = get_color_indices(#{color})"
140
131
 
141
- expected_index = nil
142
- expected_rgb = nil
143
-
144
132
  got_index, got_rgb = @chart.__send__("get_color_indices", color)
145
133
 
146
- assert_equal(expected_index, got_index, caption1)
147
- assert_equal(expected_rgb, got_rgb, caption2)
134
+ assert_nil(got_index, caption1)
135
+ assert_nil(got_rgb, caption2)
148
136
  end
149
137
 
150
138
  ###############################################################################
@@ -13,7 +13,7 @@ require 'stringio'
13
13
  # original written in Perl by John McNamara
14
14
  # converted to Ruby by Hideo Nakamura, cxn03651@msj.biglobe.ne.jp
15
15
  #
16
- class TC_ChartAreaFormats < Test::Unit::TestCase
16
+ class TC_ChartAreaFormats < Minitest::Test
17
17
  def setup
18
18
  @io = StringIO.new
19
19
  @workbook = WriteExcel.new(@io)
@@ -2,7 +2,7 @@
2
2
  require 'helper'
3
3
  require 'nkf'
4
4
 
5
- class TC_Compatibility < Test::Unit::TestCase
5
+ class TC_Compatibility < Minitest::Test
6
6
  def test_ord
7
7
  a = 'a'
8
8
  abc = 'abc'