Ejemplo n.º 1
0
        public void TestDequeueReturn()
        {
            Sixt4.TestAssignment.ConcurrentQueue <int> list = new Sixt4.TestAssignment.ConcurrentQueue <int>();

            Task <int> taskDequeue = Task <int> .Run(() => list.Dequeue(5));

            Task taskEnqueue = Task <int> .Run(() => list.Enqueue(2));

            taskDequeue.Wait();
            taskEnqueue.Wait();
            Assert.IsTrue(taskDequeue.Result == 2);
        }
Ejemplo n.º 2
0
        public void TestDequeue()
        {
            Sixt4.TestAssignment.ConcurrentQueue <int> list = new Sixt4.TestAssignment.ConcurrentQueue <int>();

            Task <int> taskDequeue = Task <int> .Run(() => list.Dequeue(1000));

            Task taskEnqueue = Task.Delay(500).ContinueWith(_ => list.Enqueue(2));

            taskDequeue.Wait();
            taskEnqueue.Wait();
            Assert.IsTrue(taskDequeue.Result == 2);
        }
Ejemplo n.º 3
0
        public void TestDequeueTimeoutException()
        {
            Sixt4.TestAssignment.ConcurrentQueue <int> list = new Sixt4.TestAssignment.ConcurrentQueue <int>();
            bool returnValue = false;

            try
            {
                Task <int> taskDequeue = Task <int> .Run(() => list.Dequeue(2000));

                taskDequeue.Wait();
            }
            catch (Exception)
            {
                returnValue = true;
            }
            Assert.IsTrue(returnValue);
        }