Bonjour,
J'ai besoin de votre aide pour l'écriture de tests unitaires pour envoi d'email en utilisant Spring boot et JavaMailSender. Depuis quelques jours j'y arrive vraiment pas.
La classe en question est la suivante:
@Service
public class NotificationServiceImpl implements INotificationService{
private static final Logger logger = LoggerFactory.getLogger(NotificationServiceImpl.class);
public static Logger getLogger() {
return logger;
}
@Autowired
private JavaMailSender javaMailSender;
@Override
public void sendHtml(String from, String personal,String recipient, String subject, String message) throws MailSendingException {
sendMail(from, personal,recipient, subject, message, true);
}
/**
* Method used to send the mail
* @param to
* @param subject
* @param message
* @param isHTML
* @throws MailSendingException
*/
private void sendMail(String from, String personal, String to, String subject, String message, Boolean isHTML) throws MailSendingException{
try{
MimeMessage mail = javaMailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mail, true);
helper.setTo(to);
helper.setSubject(subject);
helper.setText(message, isHTML);
helper.setFrom(from, personal);
getLogger().info("Send email '{}' to: {}", subject, to);
javaMailSender.send(mail);
}
catch(Exception e){
getLogger().info(String.format("Problem with sending email "+ e.getMessage()));
throw new MailSendingException("Error when sending mail");
}
}
J'aimerai pouvoir écrire un test unitaire pour le service SendHtml mais je tourne en boucle depuis plus de deux jours. j'ai vraiment besoin d'aide. J'utilise Mockito comme framework de mock et Junit pour les tests unitaires.
Merci
Partager