How to test classes with private methods, fields, and inner classes in Java?
Hello everyone. I'm new to Java and unit testing, using JUnit 5. I have a class `OrderProcessor` that contains private methods, private fields, and an inner class. I don't understand how to write tests for it properly.
Here's an example of my class:
```java
public class OrderProcessor {
private final PaymentGateway gateway;
private List items = new ArrayList<>();
public OrderProcessor(PaymentGateway gateway) {
this.gateway = gateway;
}
public boolean processOrder(Order order) {
if (!validateOrder(order)) {
return false;
}
double total = calculateTotal(order);
return gateway.charge(order.getCustomer(), total);
}
private boolean validateOrder(Order order) {
return
```