From 073833c097972e59b0208868f96b6c3445d78703 Mon Sep 17 00:00:00 2001 From: alxkm Date: Wed, 16 Jul 2025 21:32:16 +0200 Subject: [PATCH] testing: additional testcases for CountSinglyLinkedListRecursionTest --- .../CountSinglyLinkedListRecursionTest.java | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/src/test/java/com/thealgorithms/datastructures/lists/CountSinglyLinkedListRecursionTest.java b/src/test/java/com/thealgorithms/datastructures/lists/CountSinglyLinkedListRecursionTest.java index 1a3efe8a5572..1d814d0c2f9f 100644 --- a/src/test/java/com/thealgorithms/datastructures/lists/CountSinglyLinkedListRecursionTest.java +++ b/src/test/java/com/thealgorithms/datastructures/lists/CountSinglyLinkedListRecursionTest.java @@ -46,4 +46,39 @@ public void testCountWithDuplicateElements() { list.insert(3); assertEquals(5, list.count(), "Count of a list with duplicate elements should match total node count."); } + + @Test + public void testCountAfterClearingList() { + for (int i = 1; i <= 4; i++) { + list.insert(i); + } + list.clear(); // assuming you have a clear method; if not, skip this + assertEquals(0, list.count(), "Count after clearing the list should be 0."); + } + + @Test + public void testCountOnVeryLargeList() { + int n = 1000; + for (int i = 0; i < n; i++) { + list.insert(i); + } + assertEquals(n, list.count(), "Count should correctly return for large list sizes."); + } + + @Test + public void testCountOnListWithNegativeNumbers() { + list.insert(-1); + list.insert(-5); + list.insert(-10); + assertEquals(3, list.count(), "Count should correctly handle negative values."); + } + + @Test + public void testCountIsConsistentWithoutModification() { + list.insert(1); + list.insert(2); + int firstCount = list.count(); + int secondCount = list.count(); + assertEquals(firstCount, secondCount, "Repeated count calls should return consistent values."); + } }