public void PeekShouldReturnTheOnlyItemAndShouldNotRemovwItemWhenStackHasOneItems()
        {
            WorkItemWaiterEntryStack stack = new WorkItemWaiterEntryStack();
            IWorkItemWaiterEntry entry = Substitute.For<IWorkItemWaiterEntry>();
            stack.Push(entry);

            Assert.AreEqual(entry, stack.Peek());
            Assert.AreEqual(1, stack.Count);

            Assert.AreEqual(entry, stack.Peek());
            Assert.AreEqual(1, stack.Count);
        }
Beispiel #2
0
        public void PeekShouldReturnTheOnlyItemAndShouldNotRemovwItemWhenStackHasOneItems()
        {
            WorkItemWaiterEntryStack stack = new WorkItemWaiterEntryStack();
            IWorkItemWaiterEntry     entry = Substitute.For <IWorkItemWaiterEntry>();

            stack.Push(entry);

            Assert.AreEqual(entry, stack.Peek());
            Assert.AreEqual(1, stack.Count);

            Assert.AreEqual(entry, stack.Peek());
            Assert.AreEqual(1, stack.Count);
        }
Beispiel #3
0
        public void PushShouldAddTheItemToFirstPlace()
        {
            WorkItemWaiterEntryStack stack      = new WorkItemWaiterEntryStack();
            IWorkItemWaiterEntry     firstEntry = Substitute.For <IWorkItemWaiterEntry>();
            IWorkItemWaiterEntry     lastEntry  = Substitute.For <IWorkItemWaiterEntry>();

            stack.Push(firstEntry);

            Assert.AreEqual(1, stack.Count);
            Assert.AreEqual(firstEntry, stack.Peek());

            stack.Push(lastEntry);

            Assert.AreEqual(lastEntry, stack.Peek());
            Assert.AreEqual(2, stack.Count);
        }
Beispiel #4
0
        public void PeekShouldReturnLastAddedItemAndShouldNotRemoveItemWhenStackHasMoreThanOneItems()
        {
            WorkItemWaiterEntryStack stack      = new WorkItemWaiterEntryStack();
            IWorkItemWaiterEntry     firstEntry = Substitute.For <IWorkItemWaiterEntry>();
            IWorkItemWaiterEntry     lastEntry  = Substitute.For <IWorkItemWaiterEntry>();

            stack.Push(firstEntry);
            stack.Push(lastEntry);

            Assert.AreEqual(2, stack.Count);

            Assert.AreEqual(lastEntry, stack.Peek());
            Assert.AreEqual(2, stack.Count);

            Assert.AreEqual(lastEntry, stack.Peek());
            Assert.AreEqual(2, stack.Count);
        }
Beispiel #5
0
        public void RemoveShouldRemoveItemFromStack()
        {
            WorkItemWaiterEntryStack stack      = new WorkItemWaiterEntryStack();
            IWorkItemWaiterEntry     firstEntry = Substitute.For <IWorkItemWaiterEntry>();
            IWorkItemWaiterEntry     lastEntry  = Substitute.For <IWorkItemWaiterEntry>();

            stack.Push(firstEntry);
            stack.Push(lastEntry);

            Assert.AreEqual(2, stack.Count);

            Assert.AreEqual(lastEntry, stack.Peek());
            Assert.AreEqual(true, stack.Remove(lastEntry));
            Assert.AreEqual(firstEntry, stack.Peek());

            Assert.AreEqual(1, stack.Count);

            Assert.AreEqual(true, stack.Remove(firstEntry));
            Assert.AreEqual(0, stack.Count);
        }
        public void PeekShouldReturnLastAddedItemAndShouldNotRemoveItemWhenStackHasMoreThanOneItems()
        {
            WorkItemWaiterEntryStack stack = new WorkItemWaiterEntryStack();
            IWorkItemWaiterEntry firstEntry = Substitute.For<IWorkItemWaiterEntry>();
            IWorkItemWaiterEntry lastEntry = Substitute.For<IWorkItemWaiterEntry>();

            stack.Push(firstEntry);
            stack.Push(lastEntry);

            Assert.AreEqual(2, stack.Count);

            Assert.AreEqual(lastEntry, stack.Peek());
            Assert.AreEqual(2, stack.Count);

            Assert.AreEqual(lastEntry, stack.Peek());
            Assert.AreEqual(2, stack.Count);
        }
 public void PeekShouldReturnNullIfStackIsEmpty()
 {
     WorkItemWaiterEntryStack stack = new WorkItemWaiterEntryStack();
     Assert.AreEqual(null, stack.Peek());
 }
        public void RemoveShouldRemoveItemFromStack()
        {
            WorkItemWaiterEntryStack stack = new WorkItemWaiterEntryStack();
            IWorkItemWaiterEntry firstEntry = Substitute.For<IWorkItemWaiterEntry>();
            IWorkItemWaiterEntry lastEntry = Substitute.For<IWorkItemWaiterEntry>();

            stack.Push(firstEntry);
            stack.Push(lastEntry);

            Assert.AreEqual(2, stack.Count);

            Assert.AreEqual(lastEntry, stack.Peek());
            Assert.AreEqual(true, stack.Remove(lastEntry));
            Assert.AreEqual(firstEntry, stack.Peek());

            Assert.AreEqual(1, stack.Count);

            Assert.AreEqual(true, stack.Remove(firstEntry));
            Assert.AreEqual(0, stack.Count);
        }
        public void PushShouldAddTheItemToFirstPlace()
        {
            WorkItemWaiterEntryStack stack = new WorkItemWaiterEntryStack();
            IWorkItemWaiterEntry firstEntry = Substitute.For<IWorkItemWaiterEntry>();
            IWorkItemWaiterEntry lastEntry = Substitute.For<IWorkItemWaiterEntry>();

            stack.Push(firstEntry);

            Assert.AreEqual(1, stack.Count);
            Assert.AreEqual(firstEntry, stack.Peek());

            stack.Push(lastEntry);

            Assert.AreEqual(lastEntry, stack.Peek());
            Assert.AreEqual(2, stack.Count);
        }
Beispiel #10
0
        public void PeekShouldReturnNullIfStackIsEmpty()
        {
            WorkItemWaiterEntryStack stack = new WorkItemWaiterEntryStack();

            Assert.AreEqual(null, stack.Peek());
        }