Fix coverage issue in Ci::RunnersFinder#group_runners
As mentioned in !141468 (comment 1727249467), we need to change the checks in Ci::RunnersFinder#group_runners
so that developers can see all available runners (confirm that assumption first). Something like:
diff --git a/app/finders/ci/runners_finder.rb b/app/finders/ci/runners_finder.rb
index 18be2aec2e27..5479a99bc17f 100644
--- a/app/finders/ci/runners_finder.rb
+++ b/app/finders/ci/runners_finder.rb
@@ -54,12 +54,14 @@ def all_runners
end
def group_runners
- raise Gitlab::Access::AccessDeniedError unless can?(@current_user, :read_group_runners, @group)
-
case @params[:membership]
when :direct
+ raise Gitlab::Access::AccessDeniedError unless can?(@current_user, :read_group_runners, @group)
+
Ci::Runner.belonging_to_group(@group.id)
when :descendants, nil
+ raise Gitlab::Access::AccessDeniedError unless can?(@current_user, :read_group_runners, @group)
+
Ci::Runner.belonging_to_group_or_project_descendants(@group.id)
when :all_available
unless can?(@current_user, :read_group_all_available_runners, @group)
diff --git a/spec/finders/ci/runners_finder_spec.rb b/spec/finders/ci/runners_finder_spec.rb
index 7e9ef2139c99..bbc1314e00d8 100644
--- a/spec/finders/ci/runners_finder_spec.rb
+++ b/spec/finders/ci/runners_finder_spec.rb
@@ -487,7 +487,9 @@ def execute
context 'when user is group developer or below' do
where(:user_role) do
- [GroupMember::DEVELOPER, GroupMember::REPORTER, GroupMember::GUEST]
+ [GroupMember::DEVELOPER,
+ # GroupMember::REPORTER, GroupMember::GUEST
+ ]
end
with_them do