Beispiel #1
0
        public void GetHashCodeIsStable()
        {
            var codes = new List <int>();
            var retry = new ExponentialRetry(TimeSpan.FromMinutes(1), TimeSpan.FromHours(1), 22);

            for (var index = 0; index < 10; ++index)
            {
                codes.Add(retry.GetHashCode());
            }

            Assert.That(codes.Distinct().Count(), Is.EqualTo(1));
        }
Beispiel #2
0
        public void GetHashCodeIsTheSameWhenPropertiesMatch()
        {
            ExponentialRetry retry;
            var codes = new List <int>();

            for (var index = 0; index < 10; ++index)
            {
                retry = new ExponentialRetry(TimeSpan.FromMinutes(1), TimeSpan.FromHours(1), 22);
                codes.Add(retry.GetHashCode());
            }

            Assert.That(codes.Distinct().Count(), Is.EqualTo(1));
        }
Beispiel #3
0
        public void GetHashCodeDiffersWhenPropertiesDoNotMatch()
        {
            ExponentialRetry retry;

            var count = 10;
            var codes = new List <int>();

            for (var index = 0; index < count; ++index)
            {
                retry = new ExponentialRetry(TimeSpan.FromMinutes(index), TimeSpan.FromMilliseconds(index + 1), (index + 22));
                codes.Add(retry.GetHashCode());
            }

            Assert.That(codes.Distinct().Count(), Is.EqualTo(count));
        }