Skip to content

Commit 5768de2

Browse files
committed
test: refactor MiddleOfLinkedListTest for improved null safety and readability
1 parent ba7df6a commit 5768de2

1 file changed

Lines changed: 11 additions & 19 deletions

File tree

src/test/java/com/thealgorithms/datastructures/lists/MiddleOfLinkedListTest.java

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,19 @@
11
package com.thealgorithms.datastructures.lists;
22

33
import static org.junit.jupiter.api.Assertions.assertEquals;
4-
import static org.junit.jupiter.api.Assertions.assertNotNull;
54
import static org.junit.jupiter.api.Assertions.assertNull;
65

6+
import java.util.Objects;
77
import org.junit.jupiter.api.Test;
88

99
public class MiddleOfLinkedListTest {
1010

11-
private static SinglyLinkedListNode listOf(int... values) {
12-
if (values == null || values.length == 0) {
13-
return null;
14-
}
15-
16-
SinglyLinkedListNode head = new SinglyLinkedListNode(values[0]);
11+
private static SinglyLinkedListNode listOf(int firstValue, int... remainingValues) {
12+
SinglyLinkedListNode head = new SinglyLinkedListNode(firstValue);
1713
SinglyLinkedListNode current = head;
18-
for (int i = 1; i < values.length; i++) {
19-
current.next = new SinglyLinkedListNode(values[i]);
14+
15+
for (int i = 0; i < remainingValues.length; i++) {
16+
current.next = new SinglyLinkedListNode(remainingValues[i]);
2017
current = current.next;
2118
}
2219
return head;
@@ -25,32 +22,28 @@ private static SinglyLinkedListNode listOf(int... values) {
2522
@Test
2623
void middleNodeOddLength() {
2724
SinglyLinkedListNode head = listOf(1, 2, 3, 4, 5);
28-
SinglyLinkedListNode middle = MiddleOfLinkedList.middleNode(head);
29-
assertNotNull(middle);
25+
SinglyLinkedListNode middle = Objects.requireNonNull(MiddleOfLinkedList.middleNode(head));
3026
assertEquals(3, middle.value);
3127
}
3228

3329
@Test
3430
void middleNodeEvenLengthReturnsSecondMiddle() {
3531
SinglyLinkedListNode head = listOf(1, 2, 3, 4, 5, 6);
36-
SinglyLinkedListNode middle = MiddleOfLinkedList.middleNode(head);
37-
assertNotNull(middle);
32+
SinglyLinkedListNode middle = Objects.requireNonNull(MiddleOfLinkedList.middleNode(head));
3833
assertEquals(4, middle.value);
3934
}
4035

4136
@Test
4237
void middleNodeSingleElement() {
4338
SinglyLinkedListNode head = listOf(42);
44-
SinglyLinkedListNode middle = MiddleOfLinkedList.middleNode(head);
45-
assertNotNull(middle);
39+
SinglyLinkedListNode middle = Objects.requireNonNull(MiddleOfLinkedList.middleNode(head));
4640
assertEquals(42, middle.value);
4741
}
4842

4943
@Test
5044
void middleNodeTwoElementsReturnsSecond() {
5145
SinglyLinkedListNode head = listOf(10, 20);
52-
SinglyLinkedListNode middle = MiddleOfLinkedList.middleNode(head);
53-
assertNotNull(middle);
46+
SinglyLinkedListNode middle = Objects.requireNonNull(MiddleOfLinkedList.middleNode(head));
5447
assertEquals(20, middle.value);
5548
}
5649

@@ -70,8 +63,7 @@ void middleNodeDoesNotModifyListStructure() {
7063
second.next = third;
7164
third.next = fourth;
7265

73-
SinglyLinkedListNode middle = MiddleOfLinkedList.middleNode(first);
74-
assertNotNull(middle);
66+
SinglyLinkedListNode middle = Objects.requireNonNull(MiddleOfLinkedList.middleNode(first));
7567
assertEquals(3, middle.value);
7668

7769
assertEquals(second, first.next);

0 commit comments

Comments
 (0)