I'm writing some new code that involves POP3 manipulation. I'm trying to come up with a design that allows me to write tests, so it's fairly decoupled and exercises most of the new code I'm writing.
The problem I'm facing is that I still need to verify that the way I'm using some third party component for email is the right one. This involves testing, for example, strange responses from faulty POP3 servers.
Right now, I'm using a mock POP3 client so I can test the logic around a possible scenario where the client gets either an error or a strange response. However, I still need to check that these assumptions are true and remain true after, for example, an upgrade of the third party components.
Also, there's SMTP. I know in the Java world you have Dumbster.
What are my alternatives in Delphi? Write my own custom mini-servers using the usual suspects?