public void testSendMail() throws Exception { ByteArrayOutputStream baos = new ByteArrayOutputStream(128); String responses = "220\n250\n250\n250\n354\n250\n"; ByteArrayInputStream bais = new ByteArrayInputStream(responses.getBytes()); BufferedReader rdr = new BufferedReader(new InputStreamReader(bais)); mailer.useTestStreams(new PrintWriter(baos), rdr); assertTrue( mailer.doSMTP( "*****@*****.**", "*****@*****.**", "test subject", "test message", "testHost", 25, "localName")); String expectedMessage = "HELO localName\r\n" + "MAIL FROM: <*****@*****.**>\r\n" + "RCPT TO: <*****@*****.**>\r\n" + "DATA\r\n" + "From: [email protected]\r\n" + "To: [email protected]\r\n" + "Subject: test subject\r\n" + "X-Mailer: Smtp Mailer\r\n" + "\r\n" + "test message\r\n" + ".\r\n" + "QUIT\r\n"; assertEquals(expectedMessage, baos.toString()); }
public void testCheckReply() { String responses = "220\n250\n354\n"; ByteArrayInputStream bais = new ByteArrayInputStream(responses.getBytes()); BufferedReader rdr = new BufferedReader(new InputStreamReader(bais)); mailer.useTestStreams(null, rdr); assertTrue(mailer.checkReply("220")); System.err.println("Ignore the following error: "); assertFalse(mailer.checkReply("220")); assertTrue(mailer.checkReply("354")); }