Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Dumbster Fake SMTP Server

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 .idea
Octocat-spinner-32 lib
Octocat-spinner-32 src
Octocat-spinner-32 test-src
Octocat-spinner-32 .classpath
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .project
Octocat-spinner-32 Dumbster.iml
Octocat-spinner-32 README.txt
Octocat-spinner-32 build.xml
Octocat-spinner-32 license.txt
Octocat-spinner-32 pom.xml
Octocat-spinner-32 smtp-states.txt
Octocat-spinner-32 version.txt
README.txt
Dumbster fake SMTP Server
Forked from http://quintanasoft.com/dumbster/ version 1.6 by Jason Kitchen

* Works as a single-threaded unit testing SMTP target
* Works as a multi-threaded unit testing SMTP target
* API change- returns an Array of messages rather than an Iterator
* API change- RollingMailStore implements MailStore keeps rolling 100 msgs.
* API change- EMLMailStore persists mail to files
* API change- SmtpServer you can inject your own MailStore
              implementation.
* API change- SmtpServer configured via ServerOptions

* Now works stand-alone as an executable JAR
* Improved test coverage
* telnet to smtp server and use "list" command to view number of msgs
* use list command with an index 0..(size-1) of messages to view a message

EXAMPLE (SMTP unit testing fake)
public class SmtpServerTest extends TestCase {
...
  public void testSend() {
    SmtpServer server = SmtpServerFactory.startServer();

    try {
      // Submits an email using javamail to the email server listening on
      // port 25 
      // (method not shown here). Replace this with a call to your app
      // logic.
      sendMessage(25, "sender@here.com", "Test", "Test Body",
"receiver@there.com");
    } catch(Exception e) {
      e.printStackTrace();
      fail("Unexpected exception: "+e);
    }

    server.stop();

    assertTrue(server.getReceivedEmailSize() == 1);
    MailMessage message = server.getMessage(0);
    assertEquals("Test", email.getHeaderValue("Subject"));
    assertEquals("Test Body", email.getBody());	
  }
...  
}

EXAMPLE (SMTP fake server for QA, running on port 4444)
java -jar dumbster.jar 4444

For more help use the command:
java -jar dumbster.jar --help


LICENSE
=======
Under Apache 2.0 license.
Something went wrong with that request. Please try again.