Fix state leak in cluster_util_spec.rb
What does this MR do and why?
This MR moves the stub definition into the context that use it to better scope. Targets 17-2-stable-ee
as we need the pipelines to pass for patch releases.
This is meant to resolve leakage of the instance double into another example:
#<InstanceDouble(RedisClient::Cluster::Router) (anonymous)> was originally created in one example but has leaked into another example and can no longer be used. rspec-mocks' doubles are designed to only last for one example, and you need to create a new one in each example you wish to use it for.
Addresses gitlab-org/quality/engineering-productivity/master-broken-incidents#7457 (closed)
Backport issue: https://gitlab.com/gitlab-org/release/tasks/-/issues/11797
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
This MR is backporting a bug fix, documentation update, or spec fix, previously merged in the default branch. -
The MR that fixed the bug on the default branch has been deployed to GitLab.com (not applicable for documentation or spec changes). -
This MR has a severity label assigned (if applicable). -
Set the milestone of the merge request to match the target backport branch version. -
This MR has been approved by a maintainer (only one approval is required). -
Ensure the e2e:package-and-test-ee
job has either succeeded or been approved by a Software Engineer in Test.
Note to the merge request author and maintainer
If you have questions about the patch release process, please:
- Refer to the patch release runbook for engineers and maintainers for guidance.
- Ask questions on the
#releases
Slack channel (internal only).
Edited by Sylvester Chin