Next() публичный Метод

public Next ( ) : bool
Результат bool
Пример #1
0
 public async Task TestOnTimeoutShouldNotFireAsync()
 {
     var times     = 5;
     var generator = new Generator(times);
     await _target.TryAsync(() => generator.Next())
     .OnTimeout(() => Assert.Fail())
     .Until(t => t);
 }
Пример #2
0
        public void TestOnTimeoutShouldNotFire()
        {
            var times     = 5;
            var generator = new Generator(times);

            _target.Try(() => generator.Next())
            .OnTimeout(t => Assert.Fail())
            .Until(t => t);
        }
Пример #3
0
        public void TestTryUntilWithTimeLimitExceeded()
        {
            var times     = 5;
            var generator = new Generator(times + 1);

            Assert.That(() =>
                        _target.Try(() => generator.Next()).WithTimeLimit(RetryHelperTest.Interval * times).Until(t => t),
                        Throws.TypeOf <TimeoutException>());
        }
Пример #4
0
 public void TestTryUntilWithMaxTryCount()
 {
     var times = 5;
     var generator = new Generator(times);
     bool result = false;
     Expect(RetryHelperTest.CountTime(() =>
         result = _target.Try(() => generator.Next()).WithMaxTryCount(times + 1).Until(t => t)),
         EqualTo(RetryHelperTest.Interval * times).Within(RetryHelperTest.Tolerance));
     Expect(result, True);
 }
Пример #5
0
 public void TestOnSuccessAfterFiveTimes()
 {
     var times = 5;
     var generator = new Generator(times);
     var onSuccessTriggered = false;
     _target.Try(() => generator.Next())
            .OnSuccess(t => onSuccessTriggered = true)
            .Until(t => t);
     Expect(onSuccessTriggered, True);
 }
Пример #6
0
 public void TestOnTimeoutShouldNotFire()
 {
     var times = 5;
     var generator = new Generator(times);
     var onTimeoutTriggered = false;
     _target.Try(() => generator.Next())
            .OnTimeout(t => onTimeoutTriggered = true)
            .Until(t => t);
     Expect(onTimeoutTriggered, False);
 }
Пример #7
0
 public void TestOnFailureShouldNotFireIfSucceedAtFirstTime()
 {
     var times = 0;
     var generator = new Generator(times);
     var onFailureTriggered = 0;
     _target.Try(() => generator.Next())
            .OnFailure(t => onFailureTriggered++)
            .Until(t => t);
     Expect(onFailureTriggered, EqualTo(0));
 }
Пример #8
0
        public void TestOnFailureShouldNotFireIfSucceedAtFirstTime()
        {
            var times              = 0;
            var generator          = new Generator(times);
            var onFailureTriggered = 0;

            _target.Try(() => generator.Next())
            .OnFailure(t => onFailureTriggered++)
            .Until(t => t);
            Expect(onFailureTriggered, EqualTo(0));
        }
Пример #9
0
        public async Task TestOnFailureAsyncWithNoParameterAsync()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onFailureTriggered = 0;
            await _target.TryAsync(() => generator.Next())
            .OnFailure(async() => await Task.Run(() => onFailureTriggered++))
            .Until(t => t);

            Assert.That(onFailureTriggered, Is.EqualTo(times));
        }
Пример #10
0
        public void TestOnSuccessWithNoParameter()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onSuccessTriggered = false;

            _target.Try(() => generator.Next())
            .OnSuccess(() => onSuccessTriggered = true)
            .Until(t => t);
            Assert.That(onSuccessTriggered, Is.True);
        }
 public void TestTryUntilNoExceptionOfTypeAfterFiveTimes()
 {
     var times = 10;
     var generator = new Generator(times, true);
     bool result = false;
     Expect(RetryHelperTest.CountTime(() =>
         result = _target.Try(() => generator.Next()).UntilNoException<ApplicationException>()),
         EqualTo(RetryHelperTest.Interval * times).Within(RetryHelperTest.Tolerance));
     Expect(generator.TriedTimes, EqualTo(times + 1));
     Expect(result, True);
 }
 public void TestTryUntilNoExceptionOfTypeHavingOtherException()
 {
     var times = 10;
     var generator = new Generator(times, true);
     generator.RandomExceptionType = true;
     bool result = false;
     Expect(() =>
         result = _target.Try(() => generator.Next()).UntilNoException<ApplicationException>(),
         Throws.TypeOf<InvalidOperationException>());
     Expect(result, False);
 }
 public void TestTryUntilNoExceptionSuccessFirstTime()
 {
     var times = 0;
     var generator = new Generator(times);
     bool result = false;
     Expect(RetryHelperTest.CountTime(() =>
         result = _target.Try(() => generator.Next()).Until(t => t)),
         EqualTo(RetryHelperTest.Interval * times).Within(RetryHelperTest.Tolerance));
     Expect(generator.TriedTimes, EqualTo(times + 1));
     Expect(result, True);
 }
Пример #14
0
        public void TestTryUntilWithTryInterval()
        {
            var  times     = 5;
            var  generator = new Generator(times);
            bool result    = false;

            Expect(RetryHelperTest.CountTime(() =>
                                             result = _target.Try(() => generator.Next()).WithTryInterval(RetryHelperTest.Interval * 2).Until(t => t)),
                   EqualTo(RetryHelperTest.Interval * 2 * times).Within(RetryHelperTest.Tolerance));
            Expect(result, True);
        }
Пример #15
0
        public void TestTryUntilWithMaxTryCount()
        {
            var  times     = 5;
            var  generator = new Generator(times);
            bool result    = false;

            Assert.That(RetryHelperTest.MeasureTime(() =>
                                                    result = _target.Try(() => generator.Next()).WithMaxTryCount(times + 1).Until(t => t)),
                        Is.EqualTo(RetryHelperTest.Interval * times).Within(RetryHelperTest.Tolerance));
            Assert.That(result, Is.True);
        }
Пример #16
0
        public void TestOnSuccessAfterFiveTimes()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onSuccessTriggered = false;

            _target.Try(() => generator.Next())
            .OnSuccess(t => onSuccessTriggered = true)
            .Until(t => t);
            Expect(onSuccessTriggered, True);
        }
Пример #17
0
        public async Task TestOnFailureShouldNotFireIfSucceedAtFirstTimeAsync()
        {
            var times              = 0;
            var generator          = new Generator(times);
            var onFailureTriggered = 0;
            await _target.TryAsync(() => generator.Next())
            .OnFailure(() => onFailureTriggered++)
            .Until(t => t);

            Assert.That(onFailureTriggered, Is.EqualTo(0));
        }
Пример #18
0
        public void TestOnTimeoutShouldNotFire()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onTimeoutTriggered = false;

            _target.Try(() => generator.Next())
            .OnTimeout(t => onTimeoutTriggered = true)
            .Until(t => t);
            Expect(onTimeoutTriggered, False);
        }
Пример #19
0
        public async Task TestOnSuccessWithNoParameterAsync()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onSuccessTriggered = false;
            await _target.TryAsync(() => generator.Next())
            .OnSuccess(() => onSuccessTriggered = true)
            .Until(t => t);

            Assert.That(onSuccessTriggered, Is.True);
        }
        public void TestTryUntilNoExceptionSuccessFirstTime()
        {
            var  times     = 0;
            var  generator = new Generator(times);
            bool result    = false;

            Assert.That(RetryHelperTest.MeasureTime(() =>
                                                    result = _target.Try(() => generator.Next()).Until(t => t)),
                        Is.EqualTo(RetryHelperTest.Interval * times).Within(RetryHelperTest.Tolerance));
            Assert.That(generator.TriedTimes, Is.EqualTo(times + 1));
            Assert.That(result, Is.True);
        }
        public void TestTryUntilNoExceptionOfTypePassedAsParameterAfterFiveTimes()
        {
            var  times     = 10;
            var  generator = new Generator(times, true);
            bool result    = false;

            Assert.That(RetryHelperTest.MeasureTime(() =>
                                                    result = _target.Try(() => generator.Next()).UntilNoException(typeof(ApplicationException))),
                        Is.EqualTo(RetryHelperTest.Interval * times).Within(RetryHelperTest.Tolerance));
            Assert.That(generator.TriedTimes, Is.EqualTo(times + 1));
            Assert.That(result, Is.True);
        }
Пример #22
0
        public void TestTryUntilSuccessFirstTime()
        {
            var  times     = 0;
            var  generator = new Generator(times);
            bool result    = false;

            Expect(RetryHelperTest.CountTime(() =>
                                             result = _target.Try(() => generator.Next()).Until(t => t)),
                   EqualTo(RetryHelperTest.Interval * times).Within(RetryHelperTest.Tolerance));
            Expect(generator.TriedTimes, EqualTo(times + 1));
            Expect(result, True);
        }
Пример #23
0
 public void TestTryUntilWithMaxTryCountExceeded()
 {
     var times = 5;
     var generator = new Generator(times);
     bool result = false;
     Expect(RetryHelperTest.CountTime(() =>
         Expect(() =>
             result = _target.Try(() => generator.Next()).WithMaxTryCount(times).Until(t => t),
             Throws.TypeOf<TimeoutException>())),
         EqualTo(RetryHelperTest.Interval * (times - 1)).Within(RetryHelperTest.Tolerance));
     Expect(result, False);
 }
Пример #24
0
        public void TestOnSuccessShouldNotFire()
        {
            var times     = 5;
            var generator = new Generator(times);

            Assert.That(() =>
                        _target.Try(() => generator.Next())
                        .WithMaxTryCount(times - 1)
                        .OnSuccess(t => Assert.Fail())
                        .Until(t => t),
                        Throws.TypeOf <TimeoutException>());
        }
Пример #25
0
        public void TestTryUntilNoExceptionOfTypeAfterFiveTimes()
        {
            var  times     = 10;
            var  generator = new Generator(times, true);
            bool result    = false;

            Expect(RetryHelperTest.CountTime(() =>
                                             result = _target.Try(() => generator.Next()).UntilNoException <ApplicationException>()),
                   EqualTo(RetryHelperTest.Interval * times).Within(RetryHelperTest.Tolerance));
            Expect(generator.TriedTimes, EqualTo(times + 1));
            Expect(result, True);
        }
Пример #26
0
        public void TestTryUntilWithMaxTryCountExceeded()
        {
            var  times     = 5;
            var  generator = new Generator(times);
            bool result    = false;

            Expect(RetryHelperTest.CountTime(() =>
                                             Expect(() =>
                                                    result = _target.Try(() => generator.Next()).WithMaxTryCount(times).Until(t => t),
                                                    Throws.TypeOf <TimeoutException>())),
                   EqualTo(RetryHelperTest.Interval * (times - 1)).Within(RetryHelperTest.Tolerance));
            Expect(result, False);
        }
        public void TestTryUntilNoExceptionOfTypePassedAsParameterHavingOtherException()
        {
            var times     = 10;
            var generator = new Generator(times, true);

            generator.RandomExceptionType = true;
            bool result = false;

            Assert.That(() =>
                        result = _target.Try(() => generator.Next()).UntilNoException(typeof(ApplicationException)),
                        Throws.TypeOf <InvalidOperationException>());
            Assert.That(result, Is.False);
        }
Пример #28
0
        public void TestTryUntilNoExceptionOfTypeHavingOtherException()
        {
            var times     = 10;
            var generator = new Generator(times, true);

            generator.RandomExceptionType = true;
            bool result = false;

            Expect(() =>
                   result = _target.Try(() => generator.Next()).UntilNoException <ApplicationException>(),
                   Throws.TypeOf <InvalidOperationException>());
            Expect(result, False);
        }
Пример #29
0
 public void TestOnSuccessShouldNotFire()
 {
     var times = 5;
     var generator = new Generator(times);
     var onSuccessTriggered = false;
     Expect(() =>
         _target.Try(() => generator.Next())
                .WithMaxTryCount(times - 1)
                .OnSuccess(t => onSuccessTriggered = true)
                .Until(t => t),
         Throws.TypeOf<TimeoutException>());
     Expect(onSuccessTriggered, False);
 }
Пример #30
0
        public void TestOnTimeoutWithNoParameterAsync()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onTimeoutTriggered = false;

            Assert.ThrowsAsync <TimeoutException>(() =>
                                                  _target.TryAsync(() => generator.Next())
                                                  .WithMaxTryCount(times - 1)
                                                  .OnTimeout(() => onTimeoutTriggered = true)
                                                  .Until(t => t));
            Assert.That(onTimeoutTriggered, Is.True);
        }
Пример #31
0
 public void TestOnTimeoutAfterFiveTimes()
 {
     var times = 5;
     var generator = new Generator(times);
     var onTimeoutTriggered = false;
     Expect(() =>
         _target.Try(() => generator.Next())
                .WithMaxTryCount(times - 1)
                .OnTimeout(t => onTimeoutTriggered = true)
                .Until(t => t),
         Throws.TypeOf<TimeoutException>());
     Expect(onTimeoutTriggered, True);
 }
Пример #32
0
        public void TestOnSuccessShouldNotFireAsync()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onSuccessTriggered = false;

            Assert.ThrowsAsync <TimeoutException>(() =>
                                                  _target.TryAsync(() => generator.Next())
                                                  .WithMaxTryCount(times - 1)
                                                  .OnSuccess(t => onSuccessTriggered = true)
                                                  .Until(t => t));
            Assert.That(onSuccessTriggered, Is.False);
        }
        public void TestTryUntilNoExceptionAfterFiveTimes()
        {
            var times     = 10;
            var generator = new Generator(times, true);

            generator.RandomExceptionType = true;
            bool result = false;

            Assert.That(RetryHelperTest.MeasureTime(() =>
                                                    result = _target.Try(() => generator.Next()).UntilNoException()),
                        Is.EqualTo(RetryHelperTest.Interval * times).Within(RetryHelperTest.Tolerance));
            Assert.That(generator.TriedTimes, Is.EqualTo(times + 1));
            Assert.That(result, Is.True);
        }
Пример #34
0
        public async Task TestOnSuccessAfterFiveTimesAsync()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onSuccessTriggered = false;
            await _target.TryAsync(() => generator.Next())
            .OnSuccess(t => {
                Assert.IsTrue(t);
                onSuccessTriggered = true;
            })
            .Until(t => t);

            Assert.That(onSuccessTriggered, Is.True);
        }
Пример #35
0
        public void TestMultipleOnSuccess()
        {
            var times               = 5;
            var generator           = new Generator(times);
            var onSuccessTriggered1 = false;
            var onSuccessTriggered2 = false;

            _target.Try(() => generator.Next())
            .OnSuccess(t => onSuccessTriggered1 = true)
            .OnSuccess(t => onSuccessTriggered2 = true)
            .Until(t => t);
            Assert.That(onSuccessTriggered1, Is.True);
            Assert.That(onSuccessTriggered2, Is.True);
        }
Пример #36
0
 public void TestOnSuccessWithTriedCount()
 {
     var times = 5;
     var generator = new Generator(times);
     var onSuccessTriggered = false;
     _target.Try(() => generator.Next())
            .OnSuccess((t, count) =>
            {
                Expect(count, EqualTo(times + 1));
                onSuccessTriggered = true;
            })
            .Until(t => t);
     Expect(onSuccessTriggered, True);
 }
Пример #37
0
        public void TestOnSuccessShouldNotFire()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onSuccessTriggered = false;

            Expect(() =>
                   _target.Try(() => generator.Next())
                   .WithMaxTryCount(times - 1)
                   .OnSuccess(t => onSuccessTriggered = true)
                   .Until(t => t),
                   Throws.TypeOf <TimeoutException>());
            Expect(onSuccessTriggered, False);
        }
Пример #38
0
        public void TestOnTimeoutAfterFiveTimes()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onTimeoutTriggered = false;

            Expect(() =>
                   _target.Try(() => generator.Next())
                   .WithMaxTryCount(times - 1)
                   .OnTimeout(t => onTimeoutTriggered = true)
                   .Until(t => t),
                   Throws.TypeOf <TimeoutException>());
            Expect(onTimeoutTriggered, True);
        }
Пример #39
0
        public void TestOnFailureWithNoParameter()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onFailureTriggered = 0;

            _target.Try(() => generator.Next())
            .OnFailure(() =>
            {
                onFailureTriggered++;
            })
            .Until(t => t);
            Assert.That(onFailureTriggered, Is.EqualTo(times));
        }
Пример #40
0
 public void TestOnFailureAfterFiveTimes()
 {
     var times = 5;
     var generator = new Generator(times);
     var onFailureTriggered = 0;
     _target.Try(() => generator.Next())
            .OnFailure(t =>
            {
                Expect(t, False);
                onFailureTriggered++;
            })
            .Until(t => t);
     Expect(onFailureTriggered, EqualTo(times));
 }
Пример #41
0
 public void TestOnFailureWithTryCount()
 {
     var times = 5;
     var generator = new Generator(times);
     var onFailureTriggered = 0;
     _target.Try(() => generator.Next())
            .OnFailure((t, count) =>
            {
                Expect(t, False);
                Expect(count, EqualTo(++onFailureTriggered));
            })
            .Until(t => t);
     Expect(onFailureTriggered, EqualTo(times));
 }
Пример #42
0
        public async Task TestOnFailureWithTryCountAsync()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onFailureTriggered = 0;
            await _target.TryAsync(() => generator.Next())
            .OnFailure((t, count) =>
            {
                Assert.That(t, Is.False);
                Assert.That(count, Is.EqualTo(++onFailureTriggered));
            })
            .Until(t => t);

            Assert.That(onFailureTriggered, Is.EqualTo(times));
        }
Пример #43
0
        public async Task TestOnFailureAfterFiveTimesAsync()
        {
            var times              = 5;
            var generator          = new Generator(times);
            var onFailureTriggered = 0;
            await _target.TryAsync(() => generator.Next())
            .OnFailure(t =>
            {
                Assert.That(t, Is.False);
                onFailureTriggered++;
            })
            .Until(t => t);

            Assert.That(onFailureTriggered, Is.EqualTo(times));
        }
Пример #44
0
 public void TestOnTimeoutWithTriedCount()
 {
     var times = 5;
     var generator = new Generator(times);
     var onTimeoutTriggered = false;
     var maxTryCount = times - 1;
     Expect(() =>
         _target.Try(() => generator.Next())
                .WithMaxTryCount(maxTryCount)
                .OnTimeout((t, count) =>
                {
                    Expect(count, EqualTo(maxTryCount));
                    onTimeoutTriggered = true;
                })
                .Until(t => t),
         Throws.TypeOf<TimeoutException>());
     Expect(onTimeoutTriggered, True);
 }