public async Task When_resuming_the_projections_then_no_user_desired_state_is_updated()
        {
            var projections = new RegisteredProjectionsBuilder(_fixture, _registeredProjections)
                              .AddRandomProjections()
                              .Build();

            await _sut.Resume(CancellationToken.None);

            projections.ForEach(projectionMock => projectionMock.Projection.Verify(
                                    projection =>
                                    projection.UpdateUserDesiredState(It.IsAny <UserDesiredState>(), It.IsAny <CancellationToken>()),
                                    Times.Never));
        }
        public async Task When_stopping_an_unknown_projection_by_name_then_no_user_desired_state_is_updated()
        {
            var projections = new RegisteredProjectionsBuilder(_fixture, _registeredProjections)
                              .AddRandomProjections()
                              .Build();

            await _sut.Stop("unknown-projection", CancellationToken.None);

            projections.ForEach(projectionMock => projectionMock.Projection.Verify(
                                    projection =>
                                    projection.UpdateUserDesiredState(UserDesiredState.Stopped, It.IsAny <CancellationToken>()),
                                    Times.Never));
        }
        public async Task When_starting_the_projections_then_all_user_desired_states_is_updated()
        {
            var projections =
                new RegisteredProjectionsBuilder(_fixture, _registeredProjections)
                .AddRandomProjections()
                .Build();

            await _sut.Start(CancellationToken.None);

            projections.ForEach(projectionMock => projectionMock.Projection.Verify(
                                    projection =>
                                    projection.UpdateUserDesiredState(UserDesiredState.Started, It.IsAny <CancellationToken>()),
                                    Times.Once));
        }