public BecomeActive()
 {
     State = new OpenCircuitBreakerState(
         Substitute.For<CircuitBreakerSwitch>(),
         Substitute.For<CircuitBreakerInvoker>(TaskScheduler.Default),
         TimeSpan.FromMilliseconds(10)
     );
 }
            public void ThrowsOpenCircuitBreakerException()
            {
                var state = new OpenCircuitBreakerState(
                                Substitute.For<CircuitBreakerSwitch>(),
                                new CircuitBreakerInvoker(TaskScheduler.Default),
                                TimeSpan.FromMilliseconds(1)
                            );

                Assert.Throws<OpenCircuitBreakerException>(() => state.Invoke(() => ""));
            }