testing: improving DequeTest (#6410)

* testing: improving DequeTest

* testing: redundant case

* testing: fix to many static imports

* testing: add more test cases

---------

Co-authored-by: Deniz Altunkapan <93663085+DenizAltunkapan@users.noreply.github.com>
This commit is contained in:
Oleksandr Klymenko
2025-07-21 17:58:22 +02:00
committed by GitHub
parent 0e9be57ed4
commit 75298bb3f4

View File

@@ -87,4 +87,38 @@ class DequeTest {
deque.addFirst(5);
assertEquals("Head -> 5 <-> 10 <-> 20 <- Tail", deque.toString());
}
@Test
void testAlternatingAddRemove() {
Deque<Integer> deque = new Deque<>();
deque.addFirst(1);
deque.addLast(2);
deque.addFirst(0);
assertEquals(0, deque.pollFirst());
assertEquals(2, deque.pollLast());
assertEquals(1, deque.pollFirst());
org.junit.jupiter.api.Assertions.assertTrue(deque.isEmpty());
}
@Test
void testSizeAfterOperations() {
Deque<Integer> deque = new Deque<>();
assertEquals(0, deque.size());
deque.addFirst(1);
deque.addLast(2);
deque.addFirst(3);
assertEquals(3, deque.size());
deque.pollFirst();
deque.pollLast();
assertEquals(1, deque.size());
}
@Test
void testNullValues() {
Deque<String> deque = new Deque<>();
deque.addFirst(null);
assertNull(deque.peekFirst());
assertNull(deque.pollFirst());
org.junit.jupiter.api.Assertions.assertTrue(deque.isEmpty());
}
}