Como mockar métodos void no Mockito corretamente?
Olá a todos! Sou um desenvolvedor Java iniciante e estou escrevendo testes unitários com Mockito. Encontrei um problema: não consigo entender como mockar corretamente um método que não retorna nada (void).
Aqui está um exemplo simples. Existe uma classe UserService que envia email através de EmailService:
public class EmailService {
public void sendEmail(String to, String subject, String body) {
// envio real de email
System.out.println("Email sent to " + to);
}
}
public class UserService {
private final EmailService emailService;
public UserService(EmailService emailService) {
this.emailService = emailService;
}
public void registerUser(String email) {
// alguma lógica de registro
emailService.sendEmail(email, "Welcome", "Hello!");
}
}
Estou escrevendo um teste para registerUser e quero verificar se sendEmail foi chamado.