using Renci.SshNet.Common;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Threading;
using Renci.SshNet.Tests.Common;
namespace Renci.SshNet.Tests.Classes.Common
{
    /// 
    ///This is a test class for AsyncResultTest and is intended
    ///to contain all AsyncResultTest Unit Tests
    ///
    [TestClass]
    [Ignore] // placeholder for actual test
    public class AsyncResultTest : TestBase
    {
        /// 
        ///A test for EndInvoke
        ///
        public void EndInvokeTest1Helper()
        {
            AsyncResult target = CreateAsyncResult(); // TODO: Initialize to an appropriate value
            TResult expected = default(TResult); // TODO: Initialize to an appropriate value
            TResult actual;
            actual = target.EndInvoke();
            Assert.AreEqual(expected, actual);
            Assert.Inconclusive("Verify the correctness of this test method.");
        }
        internal virtual AsyncResult CreateAsyncResult()
        {
            // TODO: Instantiate an appropriate concrete class.
            AsyncResult target = null;
            return target;
        }
        [TestMethod()]
        public void EndInvokeTest1()
        {
            EndInvokeTest1Helper();
        }
        /// 
        ///A test for SetAsCompleted
        ///
        public void SetAsCompletedTest1Helper()
        {
            AsyncResult target = CreateAsyncResult(); // TODO: Initialize to an appropriate value
            TResult result = default(TResult); // TODO: Initialize to an appropriate value
            bool completedSynchronously = false; // TODO: Initialize to an appropriate value
            target.SetAsCompleted(result, completedSynchronously);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }
        [TestMethod()]
        public void SetAsCompletedTest1()
        {
            SetAsCompletedTest1Helper();
        }
        internal virtual AsyncResult CreateAsyncResult()
        {
            // TODO: Instantiate an appropriate concrete class.
            AsyncResult target = null;
            return target;
        }
        /// 
        ///A test for EndInvoke
        ///
        [TestMethod()]
        public void EndInvokeTest()
        {
            AsyncResult target = CreateAsyncResult(); // TODO: Initialize to an appropriate value
            target.EndInvoke();
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }
        /// 
        ///A test for SetAsCompleted
        ///
        [TestMethod()]
        public void SetAsCompletedTest()
        {
            AsyncResult target = CreateAsyncResult(); // TODO: Initialize to an appropriate value
            Exception exception = null; // TODO: Initialize to an appropriate value
            bool completedSynchronously = false; // TODO: Initialize to an appropriate value
            target.SetAsCompleted(exception, completedSynchronously);
            Assert.Inconclusive("A method that does not return a value cannot be verified.");
        }
        /// 
        ///A test for AsyncState
        ///
        [TestMethod()]
        public void AsyncStateTest()
        {
            AsyncResult target = CreateAsyncResult(); // TODO: Initialize to an appropriate value
            object actual;
            actual = target.AsyncState;
            Assert.Inconclusive("Verify the correctness of this test method.");
        }
        /// 
        ///A test for AsyncWaitHandle
        ///
        [TestMethod()]
        public void AsyncWaitHandleTest()
        {
            AsyncResult target = CreateAsyncResult(); // TODO: Initialize to an appropriate value
            WaitHandle actual;
            actual = target.AsyncWaitHandle;
            Assert.Inconclusive("Verify the correctness of this test method.");
        }
        /// 
        ///A test for CompletedSynchronously
        ///
        [TestMethod()]
        public void CompletedSynchronouslyTest()
        {
            AsyncResult target = CreateAsyncResult(); // TODO: Initialize to an appropriate value
            bool actual;
            actual = target.CompletedSynchronously;
            Assert.Inconclusive("Verify the correctness of this test method.");
        }
        /// 
        ///A test for IsCompleted
        ///
        [TestMethod()]
        public void IsCompletedTest()
        {
            AsyncResult target = CreateAsyncResult(); // TODO: Initialize to an appropriate value
            bool actual;
            actual = target.IsCompleted;
            Assert.Inconclusive("Verify the correctness of this test method.");
        }
    }
}