GithubHelp home page GithubHelp logo

dumbster's Introduction

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, "[email protected]", "Test", "Test Body",
"[email protected]");
    } 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.

dumbster's People

Contributors

dsaran avatar heller avatar julianseeger avatar kumm avatar nguillaumin avatar rjo1970 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.