diff options
Diffstat (limited to 'spec/lib/gitlab/database/migrations/pg_backend_pid_spec.rb')
-rw-r--r-- | spec/lib/gitlab/database/migrations/pg_backend_pid_spec.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/spec/lib/gitlab/database/migrations/pg_backend_pid_spec.rb b/spec/lib/gitlab/database/migrations/pg_backend_pid_spec.rb index 33e83ea2575..a9ef28a4b51 100644 --- a/spec/lib/gitlab/database/migrations/pg_backend_pid_spec.rb +++ b/spec/lib/gitlab/database/migrations/pg_backend_pid_spec.rb @@ -18,6 +18,17 @@ RSpec.describe Gitlab::Database::Migrations::PgBackendPid, feature_category: :da expect { |b| patched_instance.with_advisory_lock_connection(&b) }.to yield_with_args(:conn) end + + it 're-yields with same arguments and wraps it with calls to .say even when error is raised' do + patched_instance = klass.prepend(described_class).new + expect(Gitlab::Database::Migrations::PgBackendPid).to receive(:say).twice + + expect do + patched_instance.with_advisory_lock_connection do + raise ActiveRecord::ConcurrentMigrationError, 'test' + end + end.to raise_error ActiveRecord::ConcurrentMigrationError + end end describe '.patch!' do |