Example #1
0
        protected override async Task When()
        {
            var tcs = new TaskCompletionSource <object>();
            var signallingHandler = new SignallingHandler <GenericMessage>(tcs, Handler);

            SystemUnderTest.AddMessageHandler(() => signallingHandler);
            SystemUnderTest.Listen();

            // wait until it's done
            await Tasks.WaitWithTimeoutAsync(tcs.Task);

            SystemUnderTest.StopListening();
        }
        protected override async Task When()
        {
            var doneSignal        = new TaskCompletionSource <object>();
            var signallingHandler = new SignallingHandler <SimpleMessage>(doneSignal, Handler);

            SystemUnderTest.AddMessageHandler(() => signallingHandler);
            SystemUnderTest.Listen();

            // wait until it's done
            var doneOk = await Tasks.WaitWithTimeoutAsync(doneSignal.Task);

            SystemUnderTest.StopListening();

            doneOk.ShouldBeTrue("Timeout occured before done signal");
        }
Example #3
0
        protected virtual async Task WhenAsync()
        {
            var doneSignal        = new TaskCompletionSource <object>();
            var signallingHandler = new SignallingHandler <SimpleMessage>(doneSignal, Handler);

            SystemUnderTest.AddMessageHandler(() => signallingHandler);
            var cts = new CancellationTokenSource();

            SystemUnderTest.Listen(cts.Token);

            // wait until it's done
            var doneOk = await TaskHelpers.WaitWithTimeoutAsync(doneSignal.Task);

            cts.Cancel();

            doneOk.ShouldBeTrue("Timeout occured before done signal");
        }