Esempio n. 1
0
        public void Set_result_after_one_sync_step_completes_sync()
        {
            SetResultAfterOneStepOperation op = new SetResultAfterOneStepOperation(1234);
            IAsyncResult result = op.Start(null, null);

            Assert.True(result.IsCompleted);
            Assert.True(result.CompletedSynchronously);
            Assert.Equal(1234, SetResultAfterOneStepOperation.End(result));
        }
Esempio n. 2
0
        public void Invokes_callback_on_sync_completion()
        {
            SetResultAfterOneStepOperation op = new SetResultAfterOneStepOperation(1234);
            object        state          = new object();
            IAsyncResult  returnedResult = null;
            IAsyncResult  callbackResult = null;
            AsyncCallback callback       = delegate(IAsyncResult r)
            {
                callbackResult = r;
                Assert.Null(returnedResult);
                Assert.Same(state, r.AsyncState);
                Assert.Equal(1234, SetResultAfterOneStepOperation.End(r));
            };

            returnedResult = op.Start(callback, state);

            Assert.NotNull(callbackResult);
            Assert.True(returnedResult.IsCompleted);
            Assert.True(returnedResult.CompletedSynchronously);
            Assert.Same(callbackResult, returnedResult);
        }