spreadsheet_architect 3.0.0 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +25 -12
  4. data/lib/spreadsheet_architect.rb +1 -1
  5. data/lib/spreadsheet_architect/class_methods/xlsx.rb +28 -0
  6. data/lib/spreadsheet_architect/exceptions.rb +20 -14
  7. data/lib/spreadsheet_architect/monkey_patches/axlsx_column_width.rb +3 -0
  8. data/lib/spreadsheet_architect/utils.rb +31 -16
  9. data/lib/spreadsheet_architect/utils/xlsx.rb +26 -0
  10. data/lib/spreadsheet_architect/version.rb +1 -1
  11. data/test/dummy_app/app/models/custom_columns_method_post.rb +29 -0
  12. data/test/dummy_app/log/test.log +42144 -61
  13. data/test/dummy_app/tmp/axlsx-master/integration/alt_xlsx.xlsx +0 -0
  14. data/test/dummy_app/tmp/axlsx-master/integration/ods.ods +0 -0
  15. data/test/dummy_app/tmp/axlsx-master/integration/xlsx.xlsx +0 -0
  16. data/test/dummy_app/tmp/axlsx-master/kitchen_sink.ods +0 -0
  17. data/test/dummy_app/tmp/axlsx-master/kitchen_sink.xlsx +0 -0
  18. data/test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/data.csv +1 -1
  19. data/test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/data.ods +0 -0
  20. data/test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/data.xlsx +0 -0
  21. data/test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/empty.csv +1 -0
  22. data/test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/empty.ods +0 -0
  23. data/test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/empty.xlsx +0 -0
  24. data/test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/instances.csv +5 -5
  25. data/test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/instances.ods +0 -0
  26. data/test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/instances.xlsx +0 -0
  27. data/test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/data.csv +3 -0
  28. data/test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/data.ods +0 -0
  29. data/test/dummy_app/tmp/axlsx-master/models/{SpreadsheetArchitect → CustomColumnsMethodPost}/data.xlsx +0 -0
  30. data/test/dummy_app/tmp/axlsx-master/models/{SpreadsheetArchitect → CustomColumnsMethodPost}/empty.csv +0 -0
  31. data/test/dummy_app/tmp/axlsx-master/models/{SpreadsheetArchitect → CustomColumnsMethodPost}/empty.ods +0 -0
  32. data/test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/empty.xlsx +0 -0
  33. data/test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/instances.csv +6 -0
  34. data/test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/instances.ods +0 -0
  35. data/test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/instances.xlsx +0 -0
  36. data/test/dummy_app/tmp/axlsx-master/models/CustomPost/data.csv +1 -1
  37. data/test/dummy_app/tmp/axlsx-master/models/CustomPost/data.ods +0 -0
  38. data/test/dummy_app/tmp/axlsx-master/models/CustomPost/data.xlsx +0 -0
  39. data/test/dummy_app/tmp/axlsx-master/models/CustomPost/empty.csv +1 -0
  40. data/test/dummy_app/tmp/axlsx-master/models/CustomPost/empty.ods +0 -0
  41. data/test/dummy_app/tmp/axlsx-master/models/CustomPost/empty.xlsx +0 -0
  42. data/test/dummy_app/tmp/axlsx-master/models/CustomPost/instances.csv +5 -5
  43. data/test/dummy_app/tmp/axlsx-master/models/CustomPost/instances.ods +0 -0
  44. data/test/dummy_app/tmp/axlsx-master/models/CustomPost/instances.xlsx +0 -0
  45. data/test/dummy_app/tmp/axlsx-master/models/LegacyPlainRubyObject/data.csv +1 -1
  46. data/test/dummy_app/tmp/axlsx-master/models/LegacyPlainRubyObject/data.ods +0 -0
  47. data/test/dummy_app/tmp/axlsx-master/models/LegacyPlainRubyObject/data.xlsx +0 -0
  48. data/test/dummy_app/tmp/axlsx-master/models/LegacyPlainRubyObject/empty.ods +0 -0
  49. data/test/dummy_app/tmp/axlsx-master/models/LegacyPlainRubyObject/empty.xlsx +0 -0
  50. data/test/dummy_app/tmp/axlsx-master/models/LegacyPlainRubyObject/instances.csv +5 -5
  51. data/test/dummy_app/tmp/axlsx-master/models/LegacyPlainRubyObject/instances.ods +0 -0
  52. data/test/dummy_app/tmp/axlsx-master/models/LegacyPlainRubyObject/instances.xlsx +0 -0
  53. data/test/dummy_app/tmp/axlsx-master/models/PlainRubyObject/data.csv +1 -1
  54. data/test/dummy_app/tmp/axlsx-master/models/PlainRubyObject/data.ods +0 -0
  55. data/test/dummy_app/tmp/axlsx-master/models/PlainRubyObject/data.xlsx +0 -0
  56. data/test/dummy_app/tmp/axlsx-master/models/PlainRubyObject/empty.ods +0 -0
  57. data/test/dummy_app/tmp/axlsx-master/models/PlainRubyObject/empty.xlsx +0 -0
  58. data/test/dummy_app/tmp/axlsx-master/models/PlainRubyObject/instances.csv +5 -5
  59. data/test/dummy_app/tmp/axlsx-master/models/PlainRubyObject/instances.ods +0 -0
  60. data/test/dummy_app/tmp/axlsx-master/models/PlainRubyObject/instances.xlsx +0 -0
  61. data/test/dummy_app/tmp/axlsx-master/models/Post/data.csv +1 -1
  62. data/test/dummy_app/tmp/axlsx-master/models/Post/data.ods +0 -0
  63. data/test/dummy_app/tmp/axlsx-master/models/Post/data.xlsx +0 -0
  64. data/test/dummy_app/tmp/axlsx-master/models/Post/empty.csv +1 -0
  65. data/test/dummy_app/tmp/axlsx-master/models/Post/empty.ods +0 -0
  66. data/test/dummy_app/tmp/axlsx-master/models/Post/empty.xlsx +0 -0
  67. data/test/dummy_app/tmp/axlsx-master/models/Post/instances.csv +6 -0
  68. data/test/dummy_app/tmp/axlsx-master/models/Post/instances.ods +0 -0
  69. data/test/dummy_app/tmp/axlsx-master/models/Post/instances.xlsx +0 -0
  70. data/test/dummy_app/tmp/axlsx-master/multi_sheet.ods +0 -0
  71. data/test/dummy_app/tmp/axlsx-master/multi_sheet.xlsx +0 -0
  72. data/test/models/all_models_test.rb +23 -18
  73. data/test/test_helper.rb +5 -1
  74. data/test/unit/exceptions_test.rb +22 -7
  75. data/test/unit/kitchen_sink_test.rb +15 -0
  76. data/test/unit/utils_test.rb +2 -2
  77. metadata +28 -14
  78. data/test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/data.csv +0 -3
  79. data/test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/data.ods +0 -0
  80. data/test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/empty.xlsx +0 -0
@@ -1,3 +1,3 @@
1
1
  row1,test1
2
2
  123.456,,123
3
- 123,2018-07-06,2018-07-06 10:57:53 -0700
3
+ 123,2018-08-19,2018-08-19 14:25:09 -0700
@@ -1,6 +1,6 @@
1
1
  Name,Content,Created At
2
- 0,2,2018-07-06 10:57:52 -0700
3
- 1,3,2018-07-06 10:57:52 -0700
4
- 2,4,2018-07-06 10:57:52 -0700
5
- 3,5,2018-07-06 10:57:52 -0700
6
- 4,6,2018-07-06 10:57:52 -0700
2
+ 0,2,2018-08-19 14:25:08 -0700
3
+ 1,3,2018-08-19 14:25:08 -0700
4
+ 2,4,2018-08-19 14:25:08 -0700
5
+ 3,5,2018-08-19 14:25:08 -0700
6
+ 4,6,2018-08-19 14:25:08 -0700
@@ -0,0 +1,3 @@
1
+ row1,test1
2
+ 123.456,,123
3
+ 123,2018-08-19,2018-08-19 14:25:09 -0700
@@ -0,0 +1,6 @@
1
+ Name,The Content,Created At,Created At Date,asd
2
+ 0,2,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
3
+ 1,3,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
4
+ 2,4,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
5
+ 3,5,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
6
+ 4,6,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
@@ -1,3 +1,3 @@
1
1
  row1,test1
2
2
  123.456,,123
3
- 123,2018-07-06,2018-07-06 10:57:53 -0700
3
+ 123,2018-08-19,2018-08-19 14:25:09 -0700
@@ -1,6 +1,6 @@
1
1
  Name,The Content,Created At,Created At Date,asd
2
- 0,2,2018-07-06 17:57:52 UTC,2018-07-06,tadaaa
3
- 1,3,2018-07-06 17:57:52 UTC,2018-07-06,tadaaa
4
- 2,4,2018-07-06 17:57:52 UTC,2018-07-06,tadaaa
5
- 3,5,2018-07-06 17:57:52 UTC,2018-07-06,tadaaa
6
- 4,6,2018-07-06 17:57:52 UTC,2018-07-06,tadaaa
2
+ 0,2,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
3
+ 1,3,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
4
+ 2,4,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
5
+ 3,5,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
6
+ 4,6,2018-08-19 21:25:08 UTC,2018-08-19,tadaaa
@@ -1,3 +1,3 @@
1
1
  row1,test1
2
2
  123.456,,123
3
- 123,2018-07-06,2018-07-06 10:57:53 -0700
3
+ 123,2018-08-19,2018-08-19 14:25:09 -0700
@@ -1,6 +1,6 @@
1
1
  Name,Content,Object ID
2
- 0,2,70145457610500
3
- 1,3,70145457610460
4
- 2,4,70145457610380
5
- 3,5,70145457610280
6
- 4,6,70145457610240
2
+ 0,2,70214747733820
3
+ 1,3,70214747733780
4
+ 2,4,70214747733740
5
+ 3,5,70214747733700
6
+ 4,6,70214747733660
@@ -1,3 +1,3 @@
1
1
  row1,test1
2
2
  123.456,,123
3
- 123,2018-07-06,2018-07-06 10:57:53 -0700
3
+ 123,2018-08-19,2018-08-19 14:25:09 -0700
@@ -1,6 +1,6 @@
1
1
  Name,Content,Object ID
2
- 0,2,70145444278840
3
- 1,3,70145444278800
4
- 2,4,70145444278760
5
- 3,5,70145444278720
6
- 4,6,70145444278680
2
+ 0,2,70214747728140
3
+ 1,3,70214747728080
4
+ 2,4,70214747728020
5
+ 3,5,70214747727980
6
+ 4,6,70214747727940
@@ -1,3 +1,3 @@
1
1
  row1,test1
2
2
  123.456,,123
3
- 123,2018-07-06,2018-07-06 10:57:53 -0700
3
+ 123,2018-08-19,2018-08-19 14:25:09 -0700
@@ -0,0 +1 @@
1
+ Id,Name,Content,Age,Created At,Updated At
@@ -0,0 +1,6 @@
1
+ Id,Name,Content,Age,Created At,Updated At
2
+ ,0,2,,2018-08-19 14:25:08 -0700,
3
+ ,1,3,,2018-08-19 14:25:08 -0700,
4
+ ,2,4,,2018-08-19 14:25:08 -0700,
5
+ ,3,5,,2018-08-19 14:25:08 -0700,
6
+ ,4,6,,2018-08-19 14:25:08 -0700,
@@ -18,7 +18,15 @@ class AllModelsTest < ActiveSupport::TestCase
18
18
  FileUtils.mkdir_p(@path)
19
19
  end
20
20
 
21
- models = [SpreadsheetArchitect, ActiveModelObject, PlainRubyObject, LegacyPlainRubyObject, Post, CustomPost]
21
+ models = []
22
+
23
+ models_folder = File.expand_path('../../dummy_app/app/models', __FILE__)
24
+ Dir[File.join(models_folder, '*.rb')].each do |filename|
25
+ klass = filename.split('/').last.gsub('.rb', '').titleize.gsub(' ','').constantize
26
+ unless [ApplicationRecord].include?(klass)
27
+ models.push(klass)
28
+ end
29
+ end
22
30
 
23
31
  models.each do |klass|
24
32
  instances = 5.times.map{|i|
@@ -31,30 +39,27 @@ class AllModelsTest < ActiveSupport::TestCase
31
39
 
32
40
  ['csv', 'ods', 'xlsx'].each do |format|
33
41
 
34
- if klass.instance_methods.include?(:spreadsheet_columns) || klass.instance_methods.include?(:column_names)
35
-
36
- test ":instances #{klass} #{format}" do
37
- set_path(klass)
42
+ test ":instances #{klass} #{format}" do
43
+ set_path(klass)
38
44
 
39
- method = "to_#{format}"
40
- which = klass.respond_to?(method) ? klass : SpreadsheetArchitect
45
+ method = "to_#{format}"
46
+ which = klass.respond_to?(method) ? klass : SpreadsheetArchitect
41
47
 
42
- data = which.send(method, instances: instances)
48
+ data = which.send(method, instances: instances)
43
49
 
44
- File.open(File.join(@path, "instances.#{format}"), 'w+b') do |f|
45
- f.write data
46
- end
50
+ File.open(File.join(@path, "instances.#{format}"), 'w+b') do |f|
51
+ f.write data
47
52
  end
53
+ end
48
54
 
49
- test "Empty :instances #{klass} #{format}" do
50
- set_path(klass)
55
+ test "Empty :instances #{klass} #{format}" do
56
+ set_path(klass)
51
57
 
52
- method = "to_#{format}"
53
- which = klass.respond_to?(method) ? klass : SpreadsheetArchitect
58
+ method = "to_#{format}"
59
+ which = klass.respond_to?(method) ? klass : SpreadsheetArchitect
54
60
 
55
- File.open(File.join(@path, "empty.#{format}"),'w+b') do |f|
56
- f.write which.send(method, instances: [])
57
- end
61
+ File.open(File.join(@path, "empty.#{format}"),'w+b') do |f|
62
+ f.write which.send(method, instances: [])
58
63
  end
59
64
  end
60
65
 
data/test/test_helper.rb CHANGED
@@ -19,7 +19,11 @@ class ActiveSupport::TestCase
19
19
  end
20
20
 
21
21
  require 'minitest/reporters'
22
- Minitest::Reporters.use!
22
+ Minitest::Reporters.use!(
23
+ Minitest::Reporters::DefaultReporter.new,
24
+ ENV,
25
+ Minitest.backtrace_filter
26
+ )
23
27
 
24
28
  require 'custom_assertions'
25
29
 
@@ -2,6 +2,25 @@ require 'test_helper'
2
2
 
3
3
  class ExceptionsTest < ActiveSupport::TestCase
4
4
 
5
+ test "ArgumentError" do
6
+ error = SpreadsheetArchitect::Exceptions::ArgumentError
7
+
8
+ assert_raise error do
9
+ conditional_row_styles = [{}]
10
+ SpreadsheetArchitect::Utils::XLSX.conditional_styles_for_row(conditional_row_styles, true, true)
11
+ end
12
+
13
+ assert_raise error do
14
+ conditional_row_styles = [{if: true, unless: true, styles: {}}]
15
+ SpreadsheetArchitect::Utils::XLSX.conditional_styles_for_row(conditional_row_styles, true, true)
16
+ end
17
+
18
+ assert_raise error do
19
+ conditional_row_styles = [{if: true, styles: false}]
20
+ SpreadsheetArchitect::Utils::XLSX.conditional_styles_for_row(conditional_row_styles, true, true)
21
+ end
22
+ end
23
+
5
24
  test "NoDataError" do
6
25
  error = SpreadsheetArchitect::Exceptions::NoDataError
7
26
 
@@ -22,16 +41,12 @@ class ExceptionsTest < ActiveSupport::TestCase
22
41
  end
23
42
  end
24
43
 
25
- test "InvalidTypeError" do
26
- error = SpreadsheetArchitect::Exceptions::InvalidTypeError
44
+ test "OptionTypeError" do
45
+ error = SpreadsheetArchitect::Exceptions::OptionTypeError
27
46
 
28
47
  assert error.new(:foobar_option).message
29
-
30
- assert_raise error do
31
- SpreadsheetArchitect.to_csv(spreadsheet_columns: :foo)
32
- end
33
48
  assert_raise error do
34
- SpreadsheetArchitect.to_csv(data: :foo)
49
+ SpreadsheetArchitect.to_csv(data: {})
35
50
  end
36
51
  assert_raise error do
37
52
  SpreadsheetArchitect.to_csv(instances: :foo)
@@ -33,6 +33,21 @@ class KitchenSinkTest < ActiveSupport::TestCase
33
33
  {range: {rows: :all, columns: (3..4)}, styles: {color: "999999"}}
34
34
  ],
35
35
 
36
+ conditional_row_styles: [
37
+ {
38
+ if: Proc.new{|row_data, row_index|
39
+ row_index == 0 || row_data[0].to_i == 2
40
+ },
41
+ styles: {font_size: 18}
42
+ },
43
+ {
44
+ unless: Proc.new{|row_data, row_index|
45
+ row_index <= 10 || row_data[0].to_i == 15
46
+ },
47
+ styles: {align: :right}
48
+ },
49
+ ],
50
+
36
51
  borders: [
37
52
  {range: "B2:C4"},
38
53
  {range: "D6:D7", border_styles: {style: :dashDot, color: "333333"}},
@@ -139,7 +139,7 @@ class UtilsTest < ActiveSupport::TestCase
139
139
 
140
140
  klass.check_option_type(@options, :foo, Array)
141
141
 
142
- assert_raise SpreadsheetArchitect::Exceptions::InvalidTypeError do
142
+ assert_raise SpreadsheetArchitect::Exceptions::OptionTypeError do
143
143
  klass.check_option_type({foo: :bar}, :foo, Array)
144
144
  end
145
145
  end
@@ -147,7 +147,7 @@ class UtilsTest < ActiveSupport::TestCase
147
147
  test "verify_option_types" do
148
148
  klass.verify_option_types(@options)
149
149
 
150
- assert_raise SpreadsheetArchitect::Exceptions::InvalidTypeError do
150
+ assert_raise SpreadsheetArchitect::Exceptions::OptionTypeError do
151
151
  klass.verify_option_types(@options.merge({column_widths: :foobar}))
152
152
  end
153
153
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spreadsheet_architect
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Weston Ganger
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-07-06 00:00:00.000000000 Z
11
+ date: 2018-08-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: axlsx
@@ -199,6 +199,7 @@ files:
199
199
  - test/dummy_app/app/controllers/spreadsheets_controller.rb
200
200
  - test/dummy_app/app/models/active_model_object.rb
201
201
  - test/dummy_app/app/models/application_record.rb
202
+ - test/dummy_app/app/models/custom_columns_method_post.rb
202
203
  - test/dummy_app/app/models/custom_post.rb
203
204
  - test/dummy_app/app/models/legacy_plain_ruby_object.rb
204
205
  - test/dummy_app/app/models/plain_ruby_object.rb
@@ -353,6 +354,15 @@ files:
353
354
  - test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/instances.csv
354
355
  - test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/instances.ods
355
356
  - test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/instances.xlsx
357
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/data.csv
358
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/data.ods
359
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/data.xlsx
360
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/empty.csv
361
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/empty.ods
362
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/empty.xlsx
363
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/instances.csv
364
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/instances.ods
365
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/instances.xlsx
356
366
  - test/dummy_app/tmp/axlsx-master/models/CustomPost/data.csv
357
367
  - test/dummy_app/tmp/axlsx-master/models/CustomPost/data.ods
358
368
  - test/dummy_app/tmp/axlsx-master/models/CustomPost/data.xlsx
@@ -386,12 +396,9 @@ files:
386
396
  - test/dummy_app/tmp/axlsx-master/models/Post/empty.csv
387
397
  - test/dummy_app/tmp/axlsx-master/models/Post/empty.ods
388
398
  - test/dummy_app/tmp/axlsx-master/models/Post/empty.xlsx
389
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/data.csv
390
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/data.ods
391
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/data.xlsx
392
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/empty.csv
393
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/empty.ods
394
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/empty.xlsx
399
+ - test/dummy_app/tmp/axlsx-master/models/Post/instances.csv
400
+ - test/dummy_app/tmp/axlsx-master/models/Post/instances.ods
401
+ - test/dummy_app/tmp/axlsx-master/models/Post/instances.xlsx
395
402
  - test/dummy_app/tmp/axlsx-master/multi_sheet.ods
396
403
  - test/dummy_app/tmp/axlsx-master/multi_sheet.xlsx
397
404
  - test/integration/application_test.rb
@@ -437,6 +444,7 @@ test_files:
437
444
  - test/dummy_app/app/controllers/spreadsheets_controller.rb
438
445
  - test/dummy_app/app/models/active_model_object.rb
439
446
  - test/dummy_app/app/models/application_record.rb
447
+ - test/dummy_app/app/models/custom_columns_method_post.rb
440
448
  - test/dummy_app/app/models/custom_post.rb
441
449
  - test/dummy_app/app/models/legacy_plain_ruby_object.rb
442
450
  - test/dummy_app/app/models/plain_ruby_object.rb
@@ -592,6 +600,15 @@ test_files:
592
600
  - test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/instances.csv
593
601
  - test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/instances.ods
594
602
  - test/dummy_app/tmp/axlsx-master/models/ActiveModelObject/instances.xlsx
603
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/data.csv
604
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/data.ods
605
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/data.xlsx
606
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/empty.csv
607
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/empty.ods
608
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/empty.xlsx
609
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/instances.csv
610
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/instances.ods
611
+ - test/dummy_app/tmp/axlsx-master/models/CustomColumnsMethodPost/instances.xlsx
595
612
  - test/dummy_app/tmp/axlsx-master/models/CustomPost/data.csv
596
613
  - test/dummy_app/tmp/axlsx-master/models/CustomPost/data.ods
597
614
  - test/dummy_app/tmp/axlsx-master/models/CustomPost/data.xlsx
@@ -625,12 +642,9 @@ test_files:
625
642
  - test/dummy_app/tmp/axlsx-master/models/Post/empty.csv
626
643
  - test/dummy_app/tmp/axlsx-master/models/Post/empty.ods
627
644
  - test/dummy_app/tmp/axlsx-master/models/Post/empty.xlsx
628
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/data.csv
629
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/data.ods
630
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/data.xlsx
631
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/empty.csv
632
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/empty.ods
633
- - test/dummy_app/tmp/axlsx-master/models/SpreadsheetArchitect/empty.xlsx
645
+ - test/dummy_app/tmp/axlsx-master/models/Post/instances.csv
646
+ - test/dummy_app/tmp/axlsx-master/models/Post/instances.ods
647
+ - test/dummy_app/tmp/axlsx-master/models/Post/instances.xlsx
634
648
  - test/dummy_app/tmp/axlsx-master/multi_sheet.ods
635
649
  - test/dummy_app/tmp/axlsx-master/multi_sheet.xlsx
636
650
  - test/integration/application_test.rb