workbook 0.8.0 → 0.8.2

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 (74) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +21 -0
  3. data/.gitignore +4 -1
  4. data/.ruby-version +1 -1
  5. data/.travis.yml +4 -4
  6. data/CHANGELOG.md +16 -0
  7. data/Gemfile +4 -2
  8. data/README.md +9 -7
  9. data/Rakefile +9 -7
  10. data/lib/workbook/book.rb +74 -61
  11. data/lib/workbook/cell.rb +59 -12
  12. data/lib/workbook/column.rb +33 -29
  13. data/lib/workbook/format.rb +24 -23
  14. data/lib/workbook/generatetypes.rb +6 -5
  15. data/lib/workbook/modules/cache.rb +8 -7
  16. data/lib/workbook/modules/cell.rb +78 -99
  17. data/lib/workbook/modules/diff_sort.rb +93 -82
  18. data/lib/workbook/modules/raw_objects_storage.rb +7 -7
  19. data/lib/workbook/modules/type_parser.rb +31 -21
  20. data/lib/workbook/nil_value.rb +5 -9
  21. data/lib/workbook/readers/csv_reader.rb +7 -9
  22. data/lib/workbook/readers/ods_reader.rb +49 -49
  23. data/lib/workbook/readers/txt_reader.rb +7 -7
  24. data/lib/workbook/readers/xls_reader.rb +22 -32
  25. data/lib/workbook/readers/xls_shared.rb +107 -116
  26. data/lib/workbook/readers/xlsx_reader.rb +47 -46
  27. data/lib/workbook/row.rb +100 -83
  28. data/lib/workbook/sheet.rb +48 -37
  29. data/lib/workbook/table.rb +97 -71
  30. data/lib/workbook/template.rb +13 -14
  31. data/lib/workbook/types/date.rb +2 -1
  32. data/lib/workbook/types/false.rb +1 -1
  33. data/lib/workbook/types/false_class.rb +2 -1
  34. data/lib/workbook/types/nil.rb +1 -1
  35. data/lib/workbook/types/nil_class.rb +3 -2
  36. data/lib/workbook/types/numeric.rb +3 -2
  37. data/lib/workbook/types/string.rb +3 -2
  38. data/lib/workbook/types/time.rb +3 -2
  39. data/lib/workbook/types/true.rb +1 -1
  40. data/lib/workbook/types/true_class.rb +3 -2
  41. data/lib/workbook/version.rb +3 -2
  42. data/lib/workbook/writers/csv_table_writer.rb +11 -12
  43. data/lib/workbook/writers/html_writer.rb +35 -37
  44. data/lib/workbook/writers/json_table_writer.rb +9 -10
  45. data/lib/workbook/writers/xls_writer.rb +31 -35
  46. data/lib/workbook/writers/xlsx_writer.rb +46 -28
  47. data/lib/workbook.rb +17 -14
  48. data/test/helper.rb +8 -5
  49. data/test/test_book.rb +43 -38
  50. data/test/test_column.rb +29 -25
  51. data/test/test_format.rb +53 -55
  52. data/test/test_functional.rb +9 -8
  53. data/test/test_modules_cache.rb +20 -17
  54. data/test/test_modules_cell.rb +49 -46
  55. data/test/test_modules_table_diff_sort.rb +56 -63
  56. data/test/test_modules_type_parser.rb +63 -31
  57. data/test/test_readers_csv_reader.rb +50 -42
  58. data/test/test_readers_ods_reader.rb +30 -31
  59. data/test/test_readers_txt_reader.rb +23 -23
  60. data/test/test_readers_xls_reader.rb +22 -23
  61. data/test/test_readers_xls_shared.rb +5 -4
  62. data/test/test_readers_xlsx_reader.rb +46 -37
  63. data/test/test_row.rb +107 -109
  64. data/test/test_sheet.rb +43 -35
  65. data/test/test_table.rb +84 -60
  66. data/test/test_template.rb +18 -15
  67. data/test/test_types_date.rb +7 -7
  68. data/test/test_writers_csv_writer.rb +24 -0
  69. data/test/test_writers_html_writer.rb +44 -41
  70. data/test/test_writers_json_writer.rb +11 -9
  71. data/test/test_writers_xls_writer.rb +52 -35
  72. data/test/test_writers_xlsx_writer.rb +64 -34
  73. data/workbook.gemspec +26 -27
  74. metadata +93 -27
data/test/test_row.rb CHANGED
@@ -1,31 +1,27 @@
1
- # -*- encoding : utf-8 -*-
2
- require File.join(File.dirname(__FILE__), 'helper')
3
-
4
- class TestRow < Minitest::Test
1
+ # frozen_string_literal: true
5
2
 
3
+ require File.join(File.dirname(__FILE__), "helper")
6
4
 
5
+ class TestRow < Minitest::Test
7
6
  def test_init
8
7
  t = Workbook::Table.new
9
- r = Workbook::Row.new([1,2,3],t)
10
- c1 = Workbook::Cell.new(1)
11
- c2 = Workbook::Cell.new(2)
12
- c3 = Workbook::Cell.new(3)
13
- assert_equal([c1,c2,c3].collect{|c| c.value},r.collect{|c| c.value})
8
+ r = Workbook::Row.new([1, 2, 3], t)
9
+ assert_equal([1, 2, 3], r.collect { |c| c.value })
14
10
 
15
- #t = Workbook::Table.new
11
+ # t = Workbook::Table.new
16
12
  c1 = Workbook::Cell.new(1)
17
13
  c2 = Workbook::Cell.new(2)
18
14
  c3 = Workbook::Cell.new(3)
19
15
 
20
- r = Workbook::Row.new([c1,c2,c3])
21
-
22
- assert_equal([c1,c2,c3],r)
16
+ r = Workbook::Row.new([c1, c2, c3])
23
17
 
18
+ assert_equal([c1, c2, c3], r.cells)
19
+ assert_equal(Workbook::Row, r.class)
24
20
  end
25
21
 
26
22
  def test_table=
27
23
  r = Workbook::Row.new
28
- assert_raises(ArgumentError, 'table should be a Workbook::Table (you passed a String)') { r.table = "asdf" }
24
+ assert_raises(ArgumentError, "table should be a Workbook::Table (you passed a String)") { r.table = "asdf" }
29
25
  r.table = nil
30
26
  assert_nil(r.table)
31
27
  r = Workbook::Row.new
@@ -72,9 +68,9 @@ class TestRow < Minitest::Test
72
68
  r1 = Workbook::Row.new
73
69
  r1.table = t
74
70
  assert_equal(true, r1.no_values?)
75
- r1 << Workbook::Cell.new('abcd')
71
+ r1 << Workbook::Cell.new("abcd")
76
72
  assert_equal(false, r1.no_values?)
77
- r2 = Workbook::Row.new [nil, '', nil, '', '']
73
+ r2 = Workbook::Row.new [nil, "", nil, "", ""]
78
74
  r2.table = t
79
75
  assert_equal(true, r2.no_values?)
80
76
  end
@@ -84,39 +80,41 @@ class TestRow < Minitest::Test
84
80
  assert_equal([:test, :asdfasd, :asdf_asdf, :asdf2], r1.to_symbols)
85
81
  r1 = Workbook::Row.new ["inït", "è-éë"]
86
82
  assert_equal([:init, :eee], r1.to_symbols)
87
-
88
83
  end
89
84
 
90
85
  def test_to_hash
91
86
  r1 = Workbook::Row.new ["test", "asdf-asd", "asdf - asdf", "asdf2"]
92
- assert_raises(NoMethodError, 'undefined method `header\' for nil:NilClass') { r1.to_hash }
87
+ assert_raises(NoMethodError, "undefined method `header' for nil:NilClass") { r1.to_hash }
93
88
 
94
89
  t = Workbook::Table.new
95
- r1 = Workbook::Row.new ["test", "asdf-asd"]
90
+ r1 = Workbook::Row.new ["test", "asdf-asd"]
96
91
  r1.table = t
97
- expected = {:test=>Workbook::Cell.new("test"), :asdfasd=>Workbook::Cell.new("asdf-asd")}
92
+ expected = {test: Workbook::Cell.new("test"), asdfasd: Workbook::Cell.new("asdf-asd")}
98
93
  assert_equal(expected, r1.to_hash)
99
94
  date = DateTime.now
100
- r2 = Workbook::Row.new [2, date]
95
+ r2 = Workbook::Row.new [2, date]
101
96
  r2.table = t
102
- expected = {:test=>Workbook::Cell.new(2), :asdfasd=>Workbook::Cell.new(date)}
97
+ expected = {test: Workbook::Cell.new(2), asdfasd: Workbook::Cell.new(date)}
103
98
  assert_equal(expected, r2.to_hash)
104
99
  assert_equal(date, r2[:asdfasd].value)
105
100
  assert_equal(date, r2[1].value)
106
101
  end
107
102
 
108
-
109
103
  def test_to_hash_with_values
110
104
  t = Workbook::Table.new
111
- r1 = Workbook::Row.new ["test", "asdf-asd"]
105
+ r1 = Workbook::Row.new ["test", "asdf-asd"]
112
106
  r1.table = t
113
- expected = {:test=>"test", :asdfasd=>"asdf-asd"}
107
+ expected = {test: "test", asdfasd: "asdf-asd"}
114
108
  assert_equal(expected, r1.to_hash_with_values)
115
109
  date = DateTime.now
116
- r2 = Workbook::Row.new [2, date]
110
+ r2 = Workbook::Row.new [2, date]
117
111
  r2.table = t
118
- expected = {:test=>2, :asdfasd=>date}
112
+ expected = {test: 2, asdfasd: date}
119
113
  assert_equal(expected, r2.to_hash_with_values)
114
+ r3 = Workbook::Row.new [4]
115
+ r3.table = t
116
+ expected = {test: 4, asdfasd: nil}
117
+ assert_equal(expected, r3.to_hash_with_values)
120
118
  end
121
119
 
122
120
  def test_to_hash_cache
@@ -135,47 +133,46 @@ class TestRow < Minitest::Test
135
133
  end
136
134
 
137
135
  def test_compare
138
- r1 = Workbook::Row.new ["test", "asdf-asd"]
139
- r2 = Workbook::Row.new [nil, "asdf-asd"]
140
- assert_equal(-1,r1<=>r2)
141
- r1 = Workbook::Row.new [1, "asdf-asd"]
142
- r2 = Workbook::Row.new ["test", "asdf-asd"]
143
- assert_equal(-1,r1<=>r2)
144
- r1 = Workbook::Row.new [nil, "asdf-asd"]
145
- r2 = Workbook::Row.new [Time.now, "asdf-asd"]
146
- assert_equal(1,r1<=>r2)
147
- r1 = Workbook::Row.new [2, 3]
148
- r2 = Workbook::Row.new [2, nil]
149
- assert_equal(-1,r1<=>r2)
150
- r1 = Workbook::Row.new [3, 0]
151
- r2 = Workbook::Row.new [2, 100000]
152
- assert_equal(1,r1<=>r2)
153
- r1 = Workbook::Row.new [-10, 3]
154
- r2 = Workbook::Row.new [nil, 5]
155
- assert_equal(-1,r1<=>r2)
156
-
136
+ r1 = Workbook::Row.new ["test", "asdf-asd"]
137
+ r2 = Workbook::Row.new [nil, "asdf-asd"]
138
+ assert_equal(-1, r1 <=> r2)
139
+ r1 = Workbook::Row.new [1, "asdf-asd"]
140
+ r2 = Workbook::Row.new ["test", "asdf-asd"]
141
+ assert_equal(-1, r1 <=> r2)
142
+ r1 = Workbook::Row.new [nil, "asdf-asd"]
143
+ r2 = Workbook::Row.new [Time.now, "asdf-asd"]
144
+ assert_equal(1, r1 <=> r2)
145
+ r1 = Workbook::Row.new [2, 3]
146
+ r2 = Workbook::Row.new [2, nil]
147
+ assert_equal(-1, r1 <=> r2)
148
+ r1 = Workbook::Row.new [3, 0]
149
+ r2 = Workbook::Row.new [2, 100000]
150
+ assert_equal(1, r1 <=> r2)
151
+ r1 = Workbook::Row.new [-10, 3]
152
+ r2 = Workbook::Row.new [nil, 5]
153
+ assert_equal(-1, r1 <=> r2)
157
154
  end
158
155
 
159
156
  def test_find_cells_by_background_color
160
- r = Workbook::Row.new ["test", "asdf-asd"]
161
- assert_equal([],r.find_cells_by_background_color)
157
+ r = Workbook::Row.new ["test", "asdf-asd"]
158
+ assert_equal([], r.find_cells_by_background_color)
162
159
  f = Workbook::Format.new
163
- f[:background_color]='#ff00ff'
160
+ f[:background_color] = "#ff00ff"
164
161
  r.first.format = f
165
- assert_equal([:test],r.find_cells_by_background_color)
166
- assert_equal([],r.find_cells_by_background_color('#ff0000'))
162
+ assert_equal([:test], r.find_cells_by_background_color)
163
+ assert_equal([], r.find_cells_by_background_color("#ff0000"))
167
164
  end
168
165
 
169
166
  def test_to_s
170
167
  r1 = Workbook::Row.new ["test", "asdf-asd"]
171
- assert_equal("test,asdf-asd\n",r1.to_csv)
168
+ assert_equal("test,asdf-asd\n", r1.to_csv)
172
169
  end
173
170
 
174
171
  def test_clone
175
172
  b = Workbook::Book.new
176
173
  table = b.sheet.table
177
- table << Workbook::Row.new(["a","b"])
178
- row = Workbook::Row.new(["1","2"])
174
+ table << Workbook::Row.new(["a", "b"])
175
+ row = Workbook::Row.new(["1", "2"])
179
176
  table << row
180
177
  table << row
181
178
  row[1] = Workbook::Cell.new(3)
@@ -187,61 +184,61 @@ class TestRow < Minitest::Test
187
184
  def test_clone_has_no_table
188
185
  b = Workbook::Book.new
189
186
  table = b.sheet.table
190
- table << Workbook::Row.new(["a","b"])
191
- table << Workbook::Row.new([1,2])
187
+ table << Workbook::Row.new(["a", "b"])
188
+ table << Workbook::Row.new([1, 2])
192
189
  row = table[1].clone
193
190
  assert_nil(row[:a])
194
191
  assert_nil(row[:b])
195
- assert_equal(1,row[0].value)
196
- assert_equal(2,row[1].value)
192
+ assert_equal(1, row[0].value)
193
+ assert_equal(2, row[1].value)
197
194
  end
198
195
 
199
196
  def test_push
200
197
  b = Workbook::Book.new
201
198
  table = b.sheet.table
202
- table << Workbook::Row.new(["a","b"])
203
- table << Workbook::Row.new([1,2])
204
- assert_equal(1,table[1][:a].value)
205
- assert_equal(2,table[1][:b].value)
199
+ table << Workbook::Row.new(["a", "b"])
200
+ table << Workbook::Row.new([1, 2])
201
+ assert_equal(1, table[1][:a].value)
202
+ assert_equal(2, table[1][:b].value)
206
203
  b = Workbook::Book.new
207
204
  table = b.sheet.table
208
- table.push Workbook::Row.new(["a","b"])
209
- table.push Workbook::Row.new([1,2])
210
- assert_equal(1,table[1][:a].value)
211
- assert_equal(2,table[1][:b].value)
205
+ table.push Workbook::Row.new(["a", "b"])
206
+ table.push Workbook::Row.new([1, 2])
207
+ assert_equal(1, table[1][:a].value)
208
+ assert_equal(2, table[1][:b].value)
212
209
  end
213
210
 
214
211
  def test_assign
215
212
  b = Workbook::Book.new
216
213
  table = b.sheet.table
217
- table.push Workbook::Row.new(["a","b"])
218
- table[1] = Workbook::Row.new([1,2])
219
- assert_equal(1,table[1][:a].value)
220
- assert_equal(2,table[1][:b].value)
214
+ table.push Workbook::Row.new(["a", "b"])
215
+ table[1] = Workbook::Row.new([1, 2])
216
+ assert_equal(1, table[1][:a].value)
217
+ assert_equal(2, table[1][:b].value)
221
218
 
222
219
  b = Workbook::Book.new
223
220
  table = b.sheet.table
224
- table.push Workbook::Row.new(["a","b"])
225
- table[1] = [1,2]
226
- assert_equal(1,table[1][:a].value)
227
- assert_equal(2,table[1][:b].value)
221
+ table.push Workbook::Row.new(["a", "b"])
222
+ table[1] = [1, 2]
223
+ assert_equal(1, table[1][:a].value)
224
+ assert_equal(2, table[1][:b].value)
228
225
  end
229
226
 
230
227
  def test_preservation_of_format_on_assign
231
- row = Workbook::Row.new([1,2])
228
+ row = Workbook::Row.new([1, 2])
232
229
  cellformat = row.first.format
233
- cellformat["background"]="#f00"
230
+ cellformat["background"] = "#f00"
234
231
  row[0] = 3
235
- assert_equal(3,row[0].value)
236
- assert_equal("#f00",row[0].format["background"])
232
+ assert_equal(3, row[0].value)
233
+ assert_equal("#f00", row[0].format["background"])
237
234
  end
238
235
 
239
236
  def test_find_by_string
240
237
  b = Workbook::Book.new
241
238
  table = b.sheet.table
242
- table << Workbook::Row.new(["a","b"])
243
- row = Workbook::Row.new([],table)
244
- row[1]= 12
239
+ table << Workbook::Row.new(["a", "b"])
240
+ row = Workbook::Row.new([], table)
241
+ row[1] = 12
245
242
  assert_equal(12, table.last["b"])
246
243
  assert_nil(table.last["a"])
247
244
  end
@@ -249,9 +246,9 @@ class TestRow < Minitest::Test
249
246
  def test_find_by_column_string
250
247
  b = Workbook::Book.new
251
248
  table = b.sheet.table
252
- table << Workbook::Row.new(["b","a"])
253
- row = Workbook::Row.new([],table)
254
- row[1]= 12
249
+ table << Workbook::Row.new(["b", "a"])
250
+ row = Workbook::Row.new([], table)
251
+ row[1] = 12
255
252
  assert_equal(12, table.last["B"])
256
253
  assert_nil(table.last["A"])
257
254
  end
@@ -259,15 +256,15 @@ class TestRow < Minitest::Test
259
256
  def test_row_hash_index_string_assignment
260
257
  b = Workbook::Book.new
261
258
  table = b.sheet.table
262
- table << Workbook::Row.new(["a","b","d"])
263
- row = Workbook::Row.new([],table)
264
- row[1]= 12
259
+ table << Workbook::Row.new(["a", "b", "d"])
260
+ row = Workbook::Row.new([], table)
261
+ row[1] = 12
265
262
  assert_equal(12, table.last.last.value)
266
- row[:b]= 15
263
+ row[:b] = 15
267
264
  assert_equal(15, table.last.last.value)
268
- row["b"]= 18
265
+ row["b"] = 18
269
266
  assert_equal(18, table.last.last.value)
270
- row["C"]= 2
267
+ row["C"] = 2
271
268
  assert_equal(2, table.last[2].value)
272
269
  end
273
270
 
@@ -338,7 +335,6 @@ class TestRow < Minitest::Test
338
335
  d = a.trim
339
336
  assert_equal(b, a)
340
337
  assert_equal(c, d)
341
-
342
338
  end
343
339
 
344
340
  def test_add
@@ -348,40 +344,42 @@ class TestRow < Minitest::Test
348
344
  a << "asdf"
349
345
  a << 2.2
350
346
  a.push(5)
351
- assert_equal(1,a[0].value)
352
- assert_equal(2,a[1].value)
353
- assert_equal("asdf",a[2].value)
354
- assert_equal(2.2,a[3].value)
355
- assert_equal(5,a[4].value)
347
+ assert_equal(1, a[0].value)
348
+ assert_equal(2, a[1].value)
349
+ assert_equal("asdf", a[2].value)
350
+ assert_equal(2.2, a[3].value)
351
+ assert_equal(5, a[4].value)
356
352
  end
357
353
 
358
354
  def test_plus
359
- header = Workbook::Row.new([:a,:b])
355
+ header = Workbook::Row.new([:a, :b])
360
356
  a = Workbook::Row.new
361
357
  table = Workbook::Table.new
362
358
  table << header
363
359
  table << a
364
360
  assert_equal(table, a.table)
365
- assert_equal(Workbook::Row, (a + [1,1]).class )
366
- assert_equal([1,1],(a + [1,1]).to_a )
367
- assert_equal(Workbook::Cell,(a + [1,1])[0].class )
368
- a += [1,1]
369
- assert_equal([1,1],a.to_a )
370
- assert_equal(Workbook::Row, a.class )
361
+ assert_equal(Workbook::Row, (a + [1, 1]).class)
362
+ assert_equal([1, 1], (a + [1, 1]).to_a)
363
+ assert_equal(Workbook::Cell, (a + [1, 1])[0].class)
364
+ a += [1, 1]
365
+ assert_equal([1, 1], a.to_a)
366
+ assert_equal(Workbook::Row, a.class)
371
367
  assert_nil(a.table)
372
- assert_equal(Workbook::Cell,a[0].class)
368
+ assert_equal(Workbook::Cell, a[0].class)
373
369
  end
374
370
 
375
371
  def test_concat
376
- header = Workbook::Row.new([:a,:b])
372
+ header = Workbook::Row.new([:a, :b])
377
373
  a = Workbook::Row.new
378
374
  table = Workbook::Table.new
379
375
  table << header
380
376
  table << a
381
- a.concat [1,1]
382
- assert_equal([1,1],a.to_a )
383
- assert_equal(Workbook::Row, a.class )
377
+
378
+ a.concat [1, 1]
379
+
380
+ assert_equal([1, 1], a.to_a)
381
+ assert_equal(Workbook::Row, a.class)
384
382
  assert_equal(table, a.table)
385
- assert_equal(Workbook::Cell,a[0].class)
383
+ assert_equal(Workbook::Cell, a[0].class)
386
384
  end
387
385
  end
data/test/test_sheet.rb CHANGED
@@ -1,36 +1,41 @@
1
- # -*- encoding : utf-8 -*-
2
- require File.join(File.dirname(__FILE__), 'helper')
1
+ # frozen_string_literal: true
2
+
3
+ require File.join(File.dirname(__FILE__), "helper")
3
4
 
4
5
  class TestWorkbook < Minitest::Test
5
6
  def test_init
6
- w = Workbook::Sheet.new nil
7
- assert_equal([[]],w)
8
- assert_equal(w.count,1)
9
- w = Workbook::Sheet.new
10
- assert_equal([Workbook::Table.new],w)
11
- assert_equal(w.count,1)
7
+ s = Workbook::Sheet.new nil
8
+ assert_equal(Workbook::Sheet, s.class)
9
+ assert_equal(s.count, 1)
10
+
11
+ s = Workbook::Sheet.new
12
+ assert_equal(Workbook::Sheet, s.class)
13
+ assert_equal(s.count, 1)
14
+
12
15
  t = Workbook::Table.new []
13
- w = Workbook::Sheet.new t
14
- assert_equal([t],w)
15
- assert_equal(w.count,1)
16
+ s = Workbook::Sheet.new t
17
+ assert_equal(Workbook::Sheet, s.class)
18
+ assert_equal(t, s.table)
19
+ assert_equal(s.count, 1)
16
20
  end
17
21
 
18
22
  def test_table
19
23
  w = Workbook::Sheet.new nil
20
- assert_equal([],w.table)
24
+ assert_equal(Workbook::Table.new([]), w.table)
21
25
  t = Workbook::Table.new []
22
26
  w = Workbook::Sheet.new t
23
- assert_equal(w.table,t)
27
+ assert_equal(w.table, t)
24
28
  end
25
29
 
26
30
  def test_table_assignment
27
31
  t = Workbook::Table.new []
28
32
  s = Workbook::Sheet.new t
29
- assert_equal(s.table,t)
30
- data = [["a","b"],[1,2]]
31
- s.table=data
32
- assert_equal("a",s.table["A1"].value)
33
- assert_equal(2,s.table["B2"].value)
33
+ assert_equal(s.table, t)
34
+
35
+ data = [["a", "b"], [1, 2]]
36
+ s.table = data
37
+ assert_equal("a", s.table["A1"].value)
38
+ assert_equal(2, s.table["B2"].value)
34
39
  end
35
40
 
36
41
  def test_book
@@ -42,45 +47,48 @@ class TestWorkbook < Minitest::Test
42
47
  end
43
48
 
44
49
  def test_clone
45
- w = Workbook::Book.new [["a","b"],[1,2],[3,4]]
50
+ w = Workbook::Book.new [["a", "b"], [1, 2], [3, 4]]
46
51
  s = w.sheet
47
- assert_equal(3,s.table[2][:a])
52
+
53
+ assert_equal(3, s.table[2][:a])
54
+
48
55
  s2 = s.clone
56
+
49
57
  s2.table[2][:a] = 5
50
- assert_equal(3,s.table[2][:a])
51
- assert_equal(5,s2.table[2][:a])
58
+ assert_equal(3, s.table[2][:a])
59
+ assert_equal(5, s2.table[2][:a])
52
60
  end
53
61
 
54
62
  def test_create_or_open_table_at
55
63
  s = Workbook::Sheet.new
56
- table0=s.create_or_open_table_at(0)
64
+ table0 = s.create_or_open_table_at(0)
57
65
  assert_equal(Workbook::Table, table0.class)
58
66
  assert_equal(s, table0.sheet)
59
- table1=s.create_or_open_table_at(1)
67
+ table1 = s.create_or_open_table_at(1)
60
68
  assert_equal(Workbook::Table, table1.class)
61
69
  assert_equal(s, table1.sheet)
62
- table1<<Workbook::Row.new([1,2,3,4])
70
+ table1 << Workbook::Row.new([1, 2, 3, 4])
63
71
  assert_equal(false, table1 == table0)
64
72
  end
73
+
65
74
  def test_profile_speed
66
- w = Workbook::Book.new [["a","b"],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4],[1,2],[3,4]]
67
- require 'ruby-prof'
75
+ w = Workbook::Book.new [["a", "b"], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4], [1, 2], [3, 4]]
76
+ require "ruby-prof"
68
77
  RubyProf.start
69
78
  w.sheet.table.each do |row|
70
- row[:a].value
79
+ row[:a].value
71
80
  end
72
81
  result = RubyProf.stop
73
82
  printer = RubyProf::MultiPrinter.new(result)
74
- printer.print(:path => ".", :profile => "profile")
75
-
83
+ printer.print(path: ".", profile: "profile")
76
84
  end
85
+
77
86
  def test_name
78
- b = Workbook::Book.new [["a","b"],[1,2]]
79
- b.push Workbook::Sheet.new([["a","b"],[2,2]])
80
- b.push Workbook::Sheet.new([["a","b"],[3,2]])
87
+ b = Workbook::Book.new [["a", "b"], [1, 2]]
88
+ b.push Workbook::Sheet.new([["a", "b"], [2, 2]])
89
+ b.push Workbook::Sheet.new([["a", "b"], [3, 2]])
81
90
 
82
91
  # puts b.index b.last
83
- assert_equal(["Sheet 1", "Sheet 2", "Sheet 3"], b.collect{|a| a.name})
92
+ assert_equal(["Sheet 1", "Sheet 2", "Sheet 3"], b.collect { |a| a.name })
84
93
  end
85
-
86
94
  end