Я пытаюсь проверить, имеет ли объект, который я создал в моем методе тестирования и фактическом объекте, одинаковые значения во всех полях. Я использовал Matchers.refEq(), чтобы проверить это. В моем коде фактические ссылки на два объекта проверяются, а не значения полей, в отличие от того, что говорит документация для Matchers.refEq().Matchers.refEq() в JUnit сравнивает ссылки объектов
Что не так с нижестоящим чеком?
@Test
public void sendEmailMsgTest() throws MessagingException{
PowerMockito.mockStatic(Transport.class);
PowerMockito.doNothing().when(Transport.class);
Transport.send(Matchers.any(MimeMessage.class));
Properties systemProperties = System.getProperties();
Session session = Session.getDefaultInstance(systemProperties);
session.setDebug(debug);
MimeMessage mimeMessage = new MimeMessage(session);
mimeMessage.setFrom(new InternetAddress(sendFrom));
mimeMessage.addRecipient(Message.RecipientType.TO, new InternetAddress(
validEmailAddress));
mimeMessage.setSubject("HTML/CSS grade report");
mimeMessage.setSentDate(new Date());
final BodyPart textBodyPart = new MimeBodyPart();
textBodyPart
.setText("Here is your score card for the HTML/CSS assessment");
final BodyPart fileBodyPart = new MimeBodyPart();
final DataSource source = new FileDataSource(outputFile);
fileBodyPart.setDataHandler(new DataHandler(source));
fileBodyPart.setFileName(new File(outputFile).getName());
final Multipart multipart = new MimeMultipart();
multipart.addBodyPart(textBodyPart);
multipart.addBodyPart(fileBodyPart);
mimeMessage.setContent(multipart);
WriteGradeReportUtil.emailGrade(validEmailAddress, outputFile);
Mockito.verify(Transport.class);
Transport.send(Matchers.refEq(mimeMessage));
}
Метод Я пытаюсь тест:
static void emailGrade(){
//Some code
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(sendFrom));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(
sendTo));
message.setSubject("HTML/CSS grade report");
message.setSentDate(new Date());
final BodyPart textBodyPart = new MimeBodyPart();
textBodyPart
.setText("Here is your score card for the HTML/CSS assessment");
final BodyPart fileBodyPart = new MimeBodyPart();
final DataSource source = new FileDataSource(outputFile);
fileBodyPart.setDataHandler(new DataHandler(source));
fileBodyPart.setFileName(new File(outputFile).getName());
final Multipart multipart = new MimeMultipart();
multipart.addBodyPart(textBodyPart);
multipart.addBodyPart(fileBodyPart);
message.setContent(multipart);
Transport.send(message);
}