protected override void Given() { base.Given(); _config = new CircuitBreakerConfig(); _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.TryingToCloseCircuitBreaker += (sender, args) => _tryingToCloseFired = true; }
/// <summary> /// Constructor /// </summary> /// <param name="config">The configuration for the source breaker</param> /// <param name="reason">The reason why the breaker tried to open</param> /// <param name="exception">The source exception</param> /// <param name="toleratedOpenEventCount">How many open events have been tolerated</param> public ToleratedOpenCircuitBreakerEventArgs(CircuitBreakerConfig config, BreakerOpenReason reason, Exception exception, short toleratedOpenEventCount) : base(config) { Reason = reason; Exception = exception; ToleratedOpenEventCount = toleratedOpenEventCount; }
protected override void Given() { base.Given(); _thrownException = new ArgumentNullException(); _config = new CircuitBreakerConfig(); _circuitBreaker = new CircuitBreaker(_config); }
protected override void Given() { base.Given(); _caughtExceptions = new List<Exception>(); _config = new CircuitBreakerConfig {ExpectedExceptionListType = ExceptionListType.BlackList}; _config.ExpectedExceptionList.Add(typeof(ArgumentNullException)); _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.ToleratedOpenCircuitBreaker += (sender, args) => _toleratedOpenEventFired = true; _thrownException = new NullReferenceException(); }
protected override void Given() { base.Given(); _timeout = TimeSpan.FromSeconds(10); _config = new CircuitBreakerConfig { UseTimeout = true, Timeout = _timeout }; _circuitBreaker = new CircuitBreaker(_config); }
protected override void Given() { base.Given(); _config = new CircuitBreakerConfig { ExpectedExceptionListType = ExceptionListType.BlackList }; _config.ExpectedExceptionList.Add(typeof(ArgumentNullException)); _circuitBreaker = new CircuitBreaker(_config); _thrownException = new NullReferenceException(); }
protected override void Given() { base.Given(); _thrownException = new ArgumentNullException(); _config = new CircuitBreakerConfig { Timeout = TimeSpan.FromMilliseconds(1000), UseTimeout = true }; _circuitBreaker = new CircuitBreaker(_config); }
protected override void Given() { base.Given(); _caughtExceptions = new List<Exception>(); _thrownException = new ArgumentNullException(); _config = new CircuitBreakerConfig { OpenEventTolerance = 2 }; _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.ToleratedOpenCircuitBreaker += (sender, args) => _toleratedOpenEventCount++; }
protected override void Given() { base.Given(); _config = new CircuitBreakerConfig { BreakerOpenPeriods = new[] {TimeSpan.FromSeconds(1)} }; _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.OpenedCircuitBreaker += (sender, args) => _breakerOpenedCount++; _circuitBreaker.TryingToCloseCircuitBreaker += (sender, args) => _breakerTryingToCloseCount++; _circuitBreaker.ClosedCircuitBreaker += (sender, args) => _breakerClosedCount++; }
protected override void Given() { base.Given(); _caughtExceptions = new List<Exception>(); _config = new CircuitBreakerConfig { UseImmediateFailureRetry = true }; _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.OpenedCircuitBreaker += (sender, args) => _openedEventFired = true; }
protected override void Given() { base.Given(); _config = new CircuitBreakerConfig { ExpectedExceptionListType = ExceptionListType.BlackList, PermittedExceptionPassThrough = PermittedExceptionBehaviour.Swallow }; _config.ExpectedExceptionList.Add(typeof(ArgumentNullException)); _circuitBreaker = new CircuitBreaker(_config); _thrownException = new NullReferenceException(); }
protected override void Given() { base.Given(); _config = new CircuitBreakerConfig { ExpectedExceptionListType = ExceptionListType.BlackList, ExpectedExceptionList = new List<Type> { typeof (IndexOutOfRangeException) }, OpenEventTolerance = 5, }; _circuitBreaker = new CircuitBreaker(_config) { State = BreakerState.Open }; _circuitBreaker.ClosedCircuitBreaker += (sender, args) => _closedEventFired = true; }
protected override void Given() { base.Given(); _caughtExceptions = new List<Exception>(); _thrownException = new ArgumentNullException(); _config = new CircuitBreakerConfig { OpenEventTolerance = 2, OpenEventToleranceResetPeriod = new TimeSpan(0, 0, 3) }; _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.ToleratedOpenCircuitBreaker += (sender, args) => _toleratedOpenEventCount++; _circuitBreaker.OpenedCircuitBreaker += (sender, args) => _openedEventFired = true; }
protected override void Given() { base.Given(); _caughtExceptions = new List<Exception>(); _thrownException = new ArgumentNullException(); _config = new CircuitBreakerConfig { Timeout = TimeSpan.FromMilliseconds(1000), UseTimeout = true, OpenEventTolerance = 2 }; _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.ToleratedOpenCircuitBreaker += (sender, args) => _toleratedOpenedCount++; }
protected override void Given() { base.Given(); _caughtExceptions = new List<Exception>(); _config = new CircuitBreakerConfig { UseTimeout = true, Timeout = TimeSpan.FromMilliseconds(0), OpenEventTolerance = 2 }; _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.OpenedCircuitBreaker += (sender, args) => _openedEventFired = true; _circuitBreaker.ToleratedOpenCircuitBreaker += (sender, args) => _toleratedOpenedCount++; }
protected override void Given() { base.Given(); _config = new CircuitBreakerConfig { ExpectedExceptionListType = ExceptionListType.BlackList, ExpectedExceptionList = new List<Type> { typeof (IndexOutOfRangeException) }, OpenEventTolerance = 5, }; _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.OpenedCircuitBreaker += (sender, args) => _openedEventCount++; _circuitBreaker.ToleratedOpenCircuitBreaker += (sender, args) => _toleratedOpenedEventFired = true; _thrownException = new IndexOutOfRangeException(); _circuitBreaker.State = BreakerState.Open; }
protected override void Given() { base.Given(); _config = new CircuitBreakerConfig { ExpectedExceptionListType = ExceptionListType.WhiteList, ExpectedExceptionList = new List<Type> { typeof (IndexOutOfRangeException) }, OpenEventTolerance = 5, UseTimeout = true, Timeout = TimeSpan.FromSeconds(10), }; _circuitBreaker = new CircuitBreaker(_config); _circuitBreaker.ClosedCircuitBreaker += (sender, args) => _closedEventCount++; _thrownException = new IndexOutOfRangeException(); _circuitBreaker.State = BreakerState.Open; }
/// <summary> /// Initializes a new instance of the <see cref="CircuitBreakerTimedOutException"/> class. /// </summary> /// <param name="config">The configuration.</param> public CircuitBreakerTimedOutException(CircuitBreakerConfig config) : base(config) { }
/// <summary> /// Initializes a new instance of the <see cref="CircuitBreakerExecutionErrorException"/> class. /// </summary> /// <param name="config">The configuration.</param> /// <param name="exception">The exception.</param> public CircuitBreakerExecutionErrorException(CircuitBreakerConfig config, Exception exception) : base(config, exception) { }
protected override void Given() { base.Given(); _config = new CircuitBreakerConfig(); _circuitBreaker = new CircuitBreaker(_config); }
/// <summary> /// Constructor without an event factory - the breaker will just raise normal .Net events for you to handle /// </summary> /// <param name="config">The config for the breaker</param> public CircuitBreaker(CircuitBreakerConfig config) { _config = config; }
/// <summary> /// Standard CircuitBreakerException constructor /// </summary> /// <param name="config"></param> public ActionResultNotGoodException(CircuitBreakerConfig config) : base(config) { }
private void AddConfig(CircuitBreakerConfig config) { Config = config; Data.Add("CircuitBreakerConfig", Config); }
/// <summary> /// Initializes a new instance of the <see cref="CircuitBreakerException"/> class. /// </summary> /// <param name="config">The configuration.</param> /// <param name="innerException">The inner exception.</param> protected CircuitBreakerException(CircuitBreakerConfig config, Exception innerException) : base(string.Empty, innerException) { AddConfig(config); }
/// <summary> /// Initializes a new instance of the <see cref="CircuitBreakerException"/> class. /// </summary> /// <param name="config">The configuration.</param> protected CircuitBreakerException(CircuitBreakerConfig config) { AddConfig(config); }
/// <summary> /// Initializes a new instance of the <see cref="CircuitBreakerOpenException"/> class. /// </summary> /// <param name="config">The configuration.</param> public CircuitBreakerOpenException(CircuitBreakerConfig config) : base(config) { }
/// <summary> /// Constructor /// </summary> /// <param name="config">Configuration for the source breaker</param> /// <param name="reason">The reason for opening</param> /// <param name="exception">The original exception</param> public OpenedCircuitBreakerEventArgs(CircuitBreakerConfig config, BreakerOpenReason reason, Exception exception) : base(config) { this.Reason = reason; Exception = exception; }
/// <summary> /// Constructor /// </summary> /// <param name="config">The config for the source breaker</param> public CircuitBreakerEventArgs(CircuitBreakerConfig config) { Config = config; }