Fix test failures caused by faulty id generator in ChecksImport examples
This commit is contained in:
parent
27d027773e
commit
85d6d78eea
1 changed files with 14 additions and 2 deletions
|
@ -1,7 +1,19 @@
|
|||
RSpec.shared_examples 'ApplicationModel::ChecksImport' do
|
||||
describe '#id (for referential integrity during OTRS/Zendesk import)' do
|
||||
subject { build(described_class.name.underscore, id: unused_id) }
|
||||
let(:unused_id) { (described_class.pluck(:id).max || 1) * 2 }
|
||||
subject { build(described_class.name.underscore, id: next_id + 1) }
|
||||
|
||||
let(:next_id) do
|
||||
case ActiveRecord::Base.connection_config[:adapter]
|
||||
when 'mysql2'
|
||||
ActiveRecord::Base.connection.execute(<<~QUERY).first.first
|
||||
SELECT max(auto_increment) FROM information_schema.tables WHERE table_name='#{described_class.table_name}'
|
||||
QUERY
|
||||
when 'postgresql'
|
||||
ActiveRecord::Base.connection.execute(<<~QUERY).first['last_value'].next
|
||||
SELECT last_value FROM #{described_class.table_name}_id_seq
|
||||
QUERY
|
||||
end
|
||||
end
|
||||
|
||||
context 'when Setting.get("system_init_done") is false (regardless of import_mode)' do
|
||||
before { Setting.set('system_init_done', false) }
|
||||
|
|
Loading…
Reference in a new issue