public void FilteringTargetWrapperAsyncTest2() { var myMockCondition = new MyMockCondition(false); var myTarget = new MyAsyncTarget(); var wrapper = new FilteringTargetWrapper(myTarget, myMockCondition); ((ISupportsInitialize)myTarget).Initialize(); ((ISupportsInitialize)wrapper).Initialize(); var logEvent = new LogEventInfo(); Exception lastException = null; var continuationHit = new ManualResetEvent(false); AsyncContinuation continuation = ex => { lastException = ex; continuationHit.Set(); }; wrapper.WriteLogEvent(logEvent, continuation); continuationHit.WaitOne(); Assert.IsNull(lastException); Assert.AreEqual(0, myTarget.WriteCount); Assert.AreEqual(1, myMockCondition.CallCount); continuationHit.Reset(); wrapper.WriteLogEvent(logEvent, continuation); continuationHit.WaitOne(); Assert.IsNull(lastException); Assert.AreEqual(0, myTarget.WriteCount); Assert.AreEqual(2, myMockCondition.CallCount); }
public void FilteringTargetWrapperAsyncTest1() { var myMockCondition = new MyMockCondition(true); var myTarget = new MyAsyncTarget(); var wrapper = new FilteringTargetWrapper(myTarget, myMockCondition); myTarget.Initialize(null); wrapper.Initialize(null); var logEvent = new LogEventInfo(); Exception lastException = null; var continuationHit = new ManualResetEvent(false); AsyncContinuation continuation = ex => { lastException = ex; continuationHit.Set(); }; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); continuationHit.WaitOne(); Assert.Null(lastException); Assert.Equal(1, myTarget.WriteCount); Assert.Equal(1, myMockCondition.CallCount); continuationHit.Reset(); wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); continuationHit.WaitOne(); Assert.Null(lastException); Assert.Equal(2, myTarget.WriteCount); Assert.Equal(2, myMockCondition.CallCount); }
public void FilteringTargetWrapperAsyncTest2() { var myMockCondition = new MyMockCondition(false); var myTarget = new MyAsyncTarget(); var wrapper = new FilteringTargetWrapper(myTarget, myMockCondition); wrapper.Initialize(CommonCfg); var logEvent = new LogEventInfo(); Exception lastException = null; var continuationHit = new ManualResetEvent(false); Action<Exception> continuation = ex => { lastException = ex; continuationHit.Set(); }; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); continuationHit.WaitOne(); Assert.IsNull(lastException); Assert.AreEqual(0, myTarget.WriteCount); Assert.AreEqual(1, myMockCondition.CallCount); continuationHit.Reset(); wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); continuationHit.WaitOne(); Assert.IsNull(lastException); Assert.AreEqual(0, myTarget.WriteCount); Assert.AreEqual(2, myMockCondition.CallCount); }
public void FilteringTargetWrapperAsyncWithExceptionTest1() { var myMockCondition = new MyMockCondition(true); var myTarget = new MyAsyncTarget { ThrowExceptions = true, }; var wrapper = new FilteringTargetWrapper(myTarget, myMockCondition); myTarget.Initialize(null); wrapper.Initialize(null); var logEvent = new LogEventInfo(); Exception lastException = null; var continuationHit = new ManualResetEvent(false); AsyncContinuation continuation = ex => { lastException = ex; continuationHit.Set(); }; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); continuationHit.WaitOne(); Assert.IsNotNull(lastException); Assert.IsInstanceOfType(lastException, typeof(InvalidOperationException)); Assert.AreEqual(1, myTarget.WriteCount); Assert.AreEqual(1, myMockCondition.CallCount); continuationHit.Reset(); lastException = null; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); continuationHit.WaitOne(); Assert.IsNotNull(lastException); Assert.IsInstanceOfType(lastException, typeof(InvalidOperationException)); Assert.AreEqual(2, myTarget.WriteCount); Assert.AreEqual(2, myMockCondition.CallCount); }
public void FilteringTargetWrapperSyncTest2() { var myMockCondition = new MyMockCondition(false); var myTarget = new MyTarget(); var wrapper = new FilteringTargetWrapper { WrappedTarget = myTarget, Condition = myMockCondition, }; myTarget.Initialize(null); wrapper.Initialize(null); var logEvent = new LogEventInfo(); Exception lastException = null; bool continuationHit = false; AsyncContinuation continuation = ex => { lastException = ex; continuationHit = true; }; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); Assert.Equal(1, myMockCondition.CallCount); Assert.True(continuationHit); Assert.Null(lastException); Assert.Equal(0, myTarget.WriteCount); Assert.Equal(1, myMockCondition.CallCount); continuationHit = false; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); Assert.True(continuationHit); Assert.Null(lastException); Assert.Equal(0, myTarget.WriteCount); Assert.Equal(2, myMockCondition.CallCount); }
public void FilteringTargetWrapperSyncTest1() { var myMockCondition = new MyMockCondition(true); var myTarget = new MyTarget(); var wrapper = new FilteringTargetWrapper { WrappedTarget = myTarget, Condition = myMockCondition, }; myTarget.Initialize(null); wrapper.Initialize(null); var logEvent = new LogEventInfo(); Exception lastException = null; bool continuationHit = false; AsyncContinuation continuation = ex => { lastException = ex; continuationHit = true; }; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); Assert.AreEqual(1, myMockCondition.CallCount); Assert.IsTrue(continuationHit); Assert.IsNull(lastException); Assert.AreEqual(1, myTarget.WriteCount); continuationHit = false; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); Assert.IsTrue(continuationHit); Assert.IsNull(lastException); Assert.AreEqual(2, myTarget.WriteCount); Assert.AreEqual(2, myMockCondition.CallCount); }
public void FilteringTargetWrapperAsyncWithExceptionTest1() { var myMockCondition = new MyMockCondition(true); var myTarget = new MyAsyncTarget { ThrowExceptions = true, }; var wrapper = new FilteringTargetWrapper(myTarget, myMockCondition); myTarget.Initialize(null); wrapper.Initialize(null); var logEvent = new LogEventInfo(); Exception lastException = null; var continuationHit = new ManualResetEvent(false); AsyncContinuation continuation = ex => { lastException = ex; continuationHit.Set(); }; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); continuationHit.WaitOne(); Assert.IsNotNull(lastException); Assert.IsInstanceOfType(typeof(InvalidOperationException), lastException); Assert.AreEqual(1, myTarget.WriteCount); Assert.AreEqual(1, myMockCondition.CallCount); continuationHit.Reset(); lastException = null; wrapper.WriteAsyncLogEvent(logEvent.WithContinuation(continuation)); continuationHit.WaitOne(); Assert.IsNotNull(lastException); Assert.IsInstanceOfType(typeof(InvalidOperationException), lastException); Assert.AreEqual(2, myTarget.WriteCount); Assert.AreEqual(2, myMockCondition.CallCount); }
public void FilteringTargetWrapperSyncTest2() { var myMockCondition = new MyMockCondition(false); var myTarget = new MyTarget(); var wrapper = new FilteringTargetWrapper { WrappedTarget = myTarget, Condition = myMockCondition, }; ((ISupportsInitialize)myTarget).Initialize(); ((ISupportsInitialize)wrapper).Initialize(); var logEvent = new LogEventInfo(); Exception lastException = null; bool continuationHit = false; AsyncContinuation continuation = ex => { lastException = ex; continuationHit = true; }; wrapper.WriteLogEvent(logEvent, continuation); Assert.AreEqual(1, myMockCondition.CallCount); Assert.IsTrue(continuationHit); Assert.IsNull(lastException); Assert.AreEqual(0, myTarget.WriteCount); Assert.AreEqual(1, myMockCondition.CallCount); continuationHit = false; wrapper.WriteLogEvent(logEvent, continuation); Assert.IsTrue(continuationHit); Assert.IsNull(lastException); Assert.AreEqual(0, myTarget.WriteCount); Assert.AreEqual(2, myMockCondition.CallCount); }