public void AddRemoveLimiters_TestCorrectExceptions() { var limiter1 = new TimeRateLimiter(TimeSpan.FromSeconds(10), 5); var limiter2 = new TimeRateLimiter(TimeSpan.FromMinutes(1), 5); var limiters = new LimitersList(); limiters.Clear(); limiters.Add(limiter1); Action failedRemove = () => limiters.Remove(limiter2); failedRemove.Should().Throw <KeyNotFoundException>(); Action successfulRemove = () => limiters.Remove(limiter1); successfulRemove.Should().NotThrow(); }