public async Task YieldException()
        {
            // The unit test completes
            // but the exception is lost!
            var o = new AsyncConstructorException();


            for (var i = 0; i < 100 && o.Completed == false; i++) // Infinite loop
            {
                await Task.Yield();

                await Task.Delay(10);
            }

            // Not completed and no exception raised
            // Exception is lost
            Assert.IsTrue(o.Completed);
        }
        public async Task <IHttpActionResult> YieldException()
        {
            var o = new AsyncConstructorException();

            for (var i = 0; i < 100 && o.Completed == false; i++) // Infinite loop
            {
                await Task.Yield();

                await Task.Delay(10);
            }

            if (o.Completed)
            {
                return(Ok("Completed"));
            }
            else
            {
                return(Ok("Failed: Not completed an no exception raised"));
            }
        }
 public void Exception()
 {
     var o = new AsyncConstructorException();
 }
        public IHttpActionResult Exception()
        {
            var o = new AsyncConstructorException();

            return(Ok(o.Message));
        }