ListNode в нашем случае является DoubleLinkedList или другими словами NoSQL БД, хранящая в себе некотрые данные.
Соответсвенно, создание публичных методов которые могут допустим менять value неприемлимо.
Примерный вариант реализации теста
@Test
@DisplayName("Checking public methods from a task")
public void testPublicMethods() {
var listNodeClass = ListNode.class;
var expectedPublicMethodNames = Stream.of("toString", "getValue", "setPrev", "setNext", "getNext", "getPrev")
.sorted()
.toList();
var actualPublicMethodNames = Arrays.stream(listNodeClass.getDeclaredMethods())
.filter(method -> method.getModifiers() == Modifier.PUBLIC)
.map(Method::getName)
.sorted()
.toList();
Truth.assertWithMessage("ListNode security compromised")
.that(actualPublicMethodNames).isEqualTo(expectedPublicMethodNames);
}
ListNode в нашем случае является DoubleLinkedList или другими словами NoSQL БД, хранящая в себе некотрые данные. Соответсвенно, создание публичных методов которые могут допустим менять
value
неприемлимо. Примерный вариант реализации теста