}
public void testToAndFromAttributes() throws MessagingException,
IOException {
Mailet strip = new StripAttachment();
FakeMailetConfig mci = new FakeMailetConfig("Test",
new FakeMailContext());
mci.setProperty("attribute", "my.attribute");
mci.setProperty("remove", "all");
mci.setProperty("notpattern", ".*\\.tmp.*");
strip.init(mci);
Mailet recover = new RecoverAttachment();
FakeMailetConfig mci2 = new FakeMailetConfig("Test",
new FakeMailContext());
mci2.setProperty("attribute", "my.attribute");
recover.init(mci2);
Mailet onlyText = new OnlyText();
onlyText.init(new FakeMailetConfig("Test", new FakeMailContext()));
MimeMessage message = new MimeMessage(Session
.getDefaultInstance(new Properties()));
MimeMultipart mm = new MimeMultipart();
MimeBodyPart mp = new MimeBodyPart();
mp.setText("simple text");
mm.addBodyPart(mp);
String body = "\u0023\u00A4\u00E3\u00E0\u00E9";
MimeBodyPart mp2 = new MimeBodyPart(new ByteArrayInputStream(
("Content-Transfer-Encoding: 8bit\r\nContent-Type: application/octet-stream; charset=utf-8\r\n\r\n" + body).getBytes("UTF-8")));
mp2.setDisposition("attachment");
mp2
.setFileName("=?iso-8859-15?Q?=E9_++++Pubblicit=E0_=E9_vietata____Milano9052.tmp?=");
mm.addBodyPart(mp2);
String body2 = "\u0014\u00A3\u00E1\u00E2\u00E4";
MimeBodyPart mp3 = new MimeBodyPart(new ByteArrayInputStream(
("Content-Transfer-Encoding: 8bit\r\nContent-Type: application/octet-stream; charset=utf-8\r\n\r\n" + body2).getBytes("UTF-8")));
mp3.setDisposition("attachment");
mp3.setFileName("temp.zip");
mm.addBodyPart(mp3);
message.setSubject("test");
message.setContent(mm);
message.saveChanges();
Mail mail = new FakeMail();
mail.setMessage(message);
assertTrue(mail.getMessage().getContent() instanceof MimeMultipart);
assertEquals(3, ((MimeMultipart) mail.getMessage().getContent())
.getCount());
strip.service(mail);
assertTrue(mail.getMessage().getContent() instanceof MimeMultipart);
assertEquals(1, ((MimeMultipart) mail.getMessage().getContent())
.getCount());
onlyText.service(mail);
assertFalse(mail.getMessage().getContent() instanceof MimeMultipart);
assertEquals("simple text", mail.getMessage().getContent());