public void QueueTwoStacks_ExceptionWhenDequeueFromEmptyQueueTest()
        {
            var q = new QueueTwoStacks();

            q.Enqueue(1);
            q.Enqueue(2);
            q.Dequeue();
            q.Dequeue();
            Assert.Throws <InvalidOperationException>(() => q.Dequeue());
        }
        public void QueueTwoStacks_BasicQueueOperationsTest()
        {
            var q = new QueueTwoStacks();

            q.Enqueue(1);
            q.Enqueue(2);
            q.Enqueue(3);
            Assert.Equal(1, q.Dequeue());
            Assert.Equal(2, q.Dequeue());
            q.Enqueue(4);
            Assert.Equal(3, q.Dequeue());
            Assert.Equal(4, q.Dequeue());
        }