diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-06-20 14:10:13 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-06-20 14:10:13 +0300 |
commit | 0ea3fcec397b69815975647f5e2aa5fe944a8486 (patch) | |
tree | 7979381b89d26011bcf9bdc989a40fcc2f1ed4ff /spec/lib/gitlab/project_stats_refresh_conflicts_logger_spec.rb | |
parent | 72123183a20411a36d607d70b12d57c484394c8e (diff) |
Add latest changes from gitlab-org/gitlab@15-1-stable-eev15.1.0-rc42
Diffstat (limited to 'spec/lib/gitlab/project_stats_refresh_conflicts_logger_spec.rb')
-rw-r--r-- | spec/lib/gitlab/project_stats_refresh_conflicts_logger_spec.rb | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/spec/lib/gitlab/project_stats_refresh_conflicts_logger_spec.rb b/spec/lib/gitlab/project_stats_refresh_conflicts_logger_spec.rb new file mode 100644 index 00000000000..ce05d5b11c7 --- /dev/null +++ b/spec/lib/gitlab/project_stats_refresh_conflicts_logger_spec.rb @@ -0,0 +1,67 @@ +# frozen_string_literal: true + +require 'spec_helper' + +RSpec.describe Gitlab::ProjectStatsRefreshConflictsLogger do + before do + Gitlab::ApplicationContext.push(feature_category: 'test', caller_id: 'caller') + end + + describe '.warn_artifact_deletion_during_stats_refresh' do + it 'logs a warning about artifacts being deleted while the project is undergoing stats refresh' do + project_id = 123 + method = 'Foo#action' + + expect(Gitlab::AppLogger).to receive(:warn).with( + hash_including( + message: 'Deleted artifacts undergoing refresh', + method: method, + project_id: project_id, + 'correlation_id' => an_instance_of(String), + 'meta.feature_category' => 'test', + 'meta.caller_id' => 'caller' + ) + ) + + described_class.warn_artifact_deletion_during_stats_refresh(project_id: project_id, method: method) + end + end + + describe '.warn_request_rejected_during_stats_refresh' do + it 'logs a warning about artifacts being deleted while the project is undergoing stats refresh' do + project_id = 123 + + expect(Gitlab::AppLogger).to receive(:warn).with( + hash_including( + message: 'Rejected request due to project undergoing stats refresh', + project_id: project_id, + 'correlation_id' => an_instance_of(String), + 'meta.feature_category' => 'test', + 'meta.caller_id' => 'caller' + ) + ) + + described_class.warn_request_rejected_during_stats_refresh(project_id) + end + end + + describe '.warn_skipped_artifact_deletion_during_stats_refresh' do + it 'logs a warning about artifacts being excluded from deletion while the project is undergoing stats refresh' do + project_ids = [12, 34] + method = 'Foo#action' + + expect(Gitlab::AppLogger).to receive(:warn).with( + hash_including( + message: 'Skipped deleting artifacts undergoing refresh', + method: method, + project_ids: match_array(project_ids), + 'correlation_id' => an_instance_of(String), + 'meta.feature_category' => 'test', + 'meta.caller_id' => 'caller' + ) + ) + + described_class.warn_skipped_artifact_deletion_during_stats_refresh(project_ids: project_ids, method: method) + end + end +end |