public async Task TestOnTimeoutShouldNotFireAsync() { var times = 5; var generator = new Generator(times); await _target.TryAsync(() => generator.Next()) .OnTimeout(() => Assert.Fail()) .Until(t => t); }
public void TestOnTimeoutShouldNotFire() { var times = 5; var generator = new Generator(times); _target.Try(() => generator.Next()) .OnTimeout(t => Assert.Fail()) .Until(t => t); }
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>()); }
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); }
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); }
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); }
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)); }
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)); }
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); }
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); }
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); }
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)); }
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); }
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); }
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 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>()); }
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 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); }
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 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); }
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); }
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); }
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); }
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); }
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); }
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); }
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); }
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); }
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)); }
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)); }
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)); }
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)); }
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)); }
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); }