public void RemoveDomain_NoLongerRateLimitsThatDomain() { //Arrange var domainRateLimiter = new DomainRateLimiter(5); var domain = new Uri("http://a.com"); domainRateLimiter.AddDomain(domain, 1000); //Act domainRateLimiter.RemoveDomain(domain); //Assert var timer = System.Diagnostics.Stopwatch.StartNew(); domainRateLimiter.RateLimit(domain); domainRateLimiter.RateLimit(domain); timer.Stop(); Assert.IsTrue(timer.ElapsedMilliseconds < 25, "Expected it to take less than 25 millisecs but only took " + timer.ElapsedMilliseconds); }