示例#1
0
        public void Peek()
        {
            var queue = new Queue <string>();

            try
            {
                queue.Peek();
                Assert.Fail();
            }
            catch (InvalidOperationException) { }

            queue = new Queue <string>(Globals.Strings);
            var system = new S.Queue <string>(Globals.Strings);

            while (queue.Count != 0)
            {
                Assert.IsTrue(queue.Peek() == system.Peek());

                queue.Dequeue();
                system.Dequeue();

                Comparer <string> .Compare(queue, system);
            }

            Assert.IsTrue(queue.Count == system.Count && queue.Count == 0);

            try
            {
                queue.Peek();
                Assert.Fail();
            }
            catch (InvalidOperationException) { }
        }
示例#2
0
        public void TryPeek()
        {
            var queue  = new Queue <string>(Globals.Strings);
            var system = new S.Queue <string>(Globals.Strings);

            while (queue.TryPeek(out string first))
            {
                Assert.IsTrue(first == system.Peek());

                queue.Dequeue();
                system.Dequeue();

                Comparer <string> .Compare(queue, system);
            }

            Comparer <string> .Compare(queue, system);

            Assert.IsFalse(queue.TryPeek(out _));
        }