summaryrefslogtreecommitdiff
path: root/spec/serializers/merge_request_poll_cached_widget_entity_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/serializers/merge_request_poll_cached_widget_entity_spec.rb')
-rw-r--r--spec/serializers/merge_request_poll_cached_widget_entity_spec.rb42
1 files changed, 39 insertions, 3 deletions
diff --git a/spec/serializers/merge_request_poll_cached_widget_entity_spec.rb b/spec/serializers/merge_request_poll_cached_widget_entity_spec.rb
index f883156628a..458d9ecd916 100644
--- a/spec/serializers/merge_request_poll_cached_widget_entity_spec.rb
+++ b/spec/serializers/merge_request_poll_cached_widget_entity_spec.rb
@@ -2,7 +2,7 @@
require 'spec_helper'
-RSpec.describe MergeRequestPollCachedWidgetEntity do
+RSpec.describe MergeRequestPollCachedWidgetEntity, feature_category: :code_review_workflow do
using RSpec::Parameterized::TableSyntax
let_it_be(:project, refind: true) { create :project, :repository }
@@ -49,8 +49,9 @@ RSpec.describe MergeRequestPollCachedWidgetEntity do
describe 'diverged_commits_count' do
context 'when MR open and its diverging' do
it 'returns diverged commits count' do
- allow(resource).to receive_messages(open?: true, diverged_from_target_branch?: true,
- diverged_commits_count: 10)
+ allow(resource).to receive_messages(
+ open?: true, diverged_from_target_branch?: true, diverged_commits_count: 10
+ )
expect(subject[:diverged_commits_count]).to eq(10)
end
@@ -330,4 +331,39 @@ RSpec.describe MergeRequestPollCachedWidgetEntity do
end
end
end
+
+ describe 'favicon overlay path' do
+ context 'when merged' do
+ before do
+ resource.mark_as_merged!
+ resource.metrics.update!(merged_by: user)
+ end
+
+ it 'returns merged favicon overlay' do
+ expect(subject[:favicon_overlay_path]).to match_asset_path('/assets/mr_favicons/favicon_status_merged.png')
+ end
+
+ context 'with pipeline' do
+ let_it_be(:pipeline) { create(:ci_empty_pipeline, project: project, ref: resource.source_branch, sha: resource.source_branch_sha, head_pipeline_of: resource) }
+
+ it 'returns merged favicon overlay' do
+ expect(subject[:favicon_overlay_path]).to match_asset_path('/assets/mr_favicons/favicon_status_merged.png')
+ end
+ end
+ end
+
+ context 'when not merged' do
+ it 'returns no favicon overlay' do
+ expect(subject[:favicon_overlay_path]).to be_nil
+ end
+
+ context 'with pipeline' do
+ let_it_be(:pipeline) { create(:ci_empty_pipeline, project: project, ref: resource.source_branch, sha: resource.source_branch_sha, head_pipeline_of: resource) }
+
+ it 'returns pipeline favicon overlay' do
+ expect(subject[:favicon_overlay_path]).to match_asset_path('/assets/ci_favicons/favicon_status_pending.png')
+ end
+ end
+ end
+ end
end