expected.add("startHeader");
expected.add("endHeader");
expected.add("body");
expected.add("endMessage");
MimeStreamParser parser = new MimeStreamParser();
parser.setContentHandler(new AbstractContentHandler() {
public void body(BodyDescriptor bd, InputStream is) {
assertEquals((String) expected.removeFirst(), "body");
}
public void endMultipart() {
fail("endMultipart shouldn't be called for empty stream");
}
public void endBodyPart() {
fail("endBodyPart shouldn't be called for empty stream");
}
public void endHeader() {
assertEquals((String) expected.removeFirst(), "endHeader");
}
public void endMessage() {
assertEquals((String) expected.removeFirst(), "endMessage");
}
public void field(String fieldData) {
fail("field shouldn't be called for empty stream");
}
public void startMultipart(BodyDescriptor bd) {
fail("startMultipart shouldn't be called for empty stream");
}
public void startBodyPart() {
fail("startBodyPart shouldn't be called for empty stream");
}
public void startHeader() {
assertEquals((String) expected.removeFirst(), "startHeader");
}
public void startMessage() {
assertEquals((String) expected.removeFirst(), "startMessage");
}
});
parser.parse(new ByteArrayInputStream(new byte[0]));
assertEquals(0, expected.size());
}