Skip to content

Fix composability of `:published_event` with `:not_publish_event`

What does this MR do and why?

Fix composability of :published_event with :not_publish_event

Currently it's not possible to use :published_event and :not_publish_event together as both matchers are stubbing the Gitlab::EventStore#publish method, so only the first matcher will save a list of the published events.

To fix that, now we're using RSpec::PublishedGitlabEventStoreEvents to centralized all the events published within an example. This will enable us to match by multiple events or compose :published_event and :not_publish_event in the same spec.

Changelog: fixed

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

Before After

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

Edited by Kassio Borges

Merge request reports