active_admin_import 4.1.2 → 4.2.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/lib/active_admin_import.rb +1 -0
- data/lib/active_admin_import/dsl.rb +5 -1
- data/lib/active_admin_import/exception.rb +5 -0
- data/lib/active_admin_import/version.rb +1 -1
- data/spec/import_spec.rb +22 -0
- data/spec/spec_helper.rb +1 -0
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: de2d35b497f1bd3dc0ec315c01b54b414f33d17ae00ec1dd696dabda7f457d23
|
4
|
+
data.tar.gz: f384a6d7ee62080902c06ce1bc37dbc184313c7150af13af7f45d732da499cd5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4918c47b9cd9bfdc0d2e12733f00c7608999162e0d041b9c6414ca63aa3660dafb87e01d10eb52ffb106895c0cda44f1e89231c546be72bf94707253e71bb5da
|
7
|
+
data.tar.gz: 29d229496fc5e75e3d74b7b2f9312dde645dd29c44833d7c6315b01109410364262e9c90e16f49117b2fffe503077006bf602074b937963aa78b5cd4d4b90ac0
|
data/CHANGELOG.md
CHANGED
data/lib/active_admin_import.rb
CHANGED
@@ -3,6 +3,7 @@ require 'activerecord-import'
|
|
3
3
|
require 'active_admin'
|
4
4
|
require 'active_admin_import/version'
|
5
5
|
require 'active_admin_import/engine'
|
6
|
+
require 'active_admin_import/exception'
|
6
7
|
require 'active_admin_import/import_result'
|
7
8
|
require 'active_admin_import/options'
|
8
9
|
require 'active_admin_import/dsl'
|
@@ -92,7 +92,11 @@ module ActiveAdminImport
|
|
92
92
|
else
|
93
93
|
instance_exec result, options, &DEFAULT_RESULT_PROC
|
94
94
|
end
|
95
|
-
rescue ActiveRecord::Import::MissingColumnError,
|
95
|
+
rescue ActiveRecord::Import::MissingColumnError,
|
96
|
+
NoMethodError,
|
97
|
+
ActiveRecord::StatementInvalid,
|
98
|
+
CSV::MalformedCSVError,
|
99
|
+
ActiveAdminImport::Exception => e
|
96
100
|
Rails.logger.error(I18n.t('active_admin_import.file_error', message: e.message))
|
97
101
|
Rails.logger.error(e.backtrace.join("\n"))
|
98
102
|
flash[:error] = I18n.t('active_admin_import.file_error', message: e.message[0..200])
|
data/spec/import_spec.rb
CHANGED
@@ -430,6 +430,28 @@ describe 'import', type: :feature do
|
|
430
430
|
upload_file!(:authors)
|
431
431
|
expect(Author.count).to eq(2)
|
432
432
|
end
|
433
|
+
|
434
|
+
context 'when the option before_import raises a ActiveAdminImport::Exception' do
|
435
|
+
let(:options) { { before_import: ->(_) { raise ActiveAdminImport::Exception, 'error message' } } }
|
436
|
+
|
437
|
+
before { upload_file!(:authors) }
|
438
|
+
|
439
|
+
it 'should show error' do
|
440
|
+
expect(page).to have_content I18n.t('active_admin_import.file_error', message: 'error message')
|
441
|
+
expect(Author.count).to eq(0)
|
442
|
+
end
|
443
|
+
end
|
444
|
+
|
445
|
+
context 'when the option before_batch_import raises a ActiveAdminImport::Exception' do
|
446
|
+
let(:options) { { before_batch_import: ->(_) { raise ActiveAdminImport::Exception, 'error message' } } }
|
447
|
+
|
448
|
+
before { upload_file!(:authors) }
|
449
|
+
|
450
|
+
it 'should show error' do
|
451
|
+
expect(page).to have_content I18n.t('active_admin_import.file_error', message: 'error message')
|
452
|
+
expect(Author.count).to eq(0)
|
453
|
+
end
|
454
|
+
end
|
433
455
|
end
|
434
456
|
end
|
435
457
|
|
data/spec/spec_helper.rb
CHANGED
@@ -20,6 +20,7 @@ system 'rake setup' unless File.exist?(ENV['RAILS_ROOT'])
|
|
20
20
|
require 'active_model'
|
21
21
|
# require ActiveRecord to ensure that Ransack loads correctly
|
22
22
|
require 'active_record'
|
23
|
+
require 'action_view'
|
23
24
|
require 'active_admin'
|
24
25
|
ActiveAdmin.application.load_paths = [ENV['RAILS_ROOT'] + '/app/admin']
|
25
26
|
require ENV['RAILS_ROOT'] + '/config/environment.rb'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: active_admin_import
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Igor Fedoronchuk
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-02-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord-import
|
@@ -99,6 +99,7 @@ files:
|
|
99
99
|
- lib/active_admin_import/authorization.rb
|
100
100
|
- lib/active_admin_import/dsl.rb
|
101
101
|
- lib/active_admin_import/engine.rb
|
102
|
+
- lib/active_admin_import/exception.rb
|
102
103
|
- lib/active_admin_import/import_result.rb
|
103
104
|
- lib/active_admin_import/importer.rb
|
104
105
|
- lib/active_admin_import/model.rb
|
@@ -148,7 +149,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
148
149
|
- !ruby/object:Gem::Version
|
149
150
|
version: '0'
|
150
151
|
requirements: []
|
151
|
-
rubygems_version: 3.0.
|
152
|
+
rubygems_version: 3.0.6
|
152
153
|
signing_key:
|
153
154
|
specification_version: 4
|
154
155
|
summary: ActiveAdmin import based on activerecord-import gem.
|