Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/support/shared_examples/models/concerns/repository_storage_movable_shared_examples.rb')
-rw-r--r--spec/support/shared_examples/models/concerns/repository_storage_movable_shared_examples.rb13
1 files changed, 10 insertions, 3 deletions
diff --git a/spec/support/shared_examples/models/concerns/repository_storage_movable_shared_examples.rb b/spec/support/shared_examples/models/concerns/repository_storage_movable_shared_examples.rb
index 3f1588c46b3..a9a13ddcd60 100644
--- a/spec/support/shared_examples/models/concerns/repository_storage_movable_shared_examples.rb
+++ b/spec/support/shared_examples/models/concerns/repository_storage_movable_shared_examples.rb
@@ -71,14 +71,21 @@ RSpec.shared_examples 'handles repository moves' do
end
context 'when the transition fails' do
- it 'does not trigger the corresponding repository storage worker and adds an error' do
+ before do
allow(storage_move.container).to receive(:set_repository_read_only!).and_raise(StandardError, 'foobar')
- expect(repository_storage_worker).not_to receive(:perform_async)
+ end
+ it 'does not trigger the corresponding repository storage worker and adds an error' do
+ expect(repository_storage_worker).not_to receive(:perform_async)
storage_move.schedule!
-
expect(storage_move.errors[error_key]).to include('foobar')
end
+
+ it 'sets the state to failed' do
+ expect(storage_move).to receive(:do_fail!).and_call_original
+ storage_move.schedule!
+ expect(storage_move.state_name).to eq(:failed)
+ end
end
end