@Override public void init(Configuration config) throws ConfigurationException { setSpamdHost(config.getString("spamdHost", "localhost")); setSpamdPort(config.getInt("spamdPort", 783)); setSpamdRejectionHits(config.getDouble("spamdRejectionHits", 0.0)); }
@Test public void testSpam() throws Exception { SMTPSession session = setupMockedSMTPSession(setupMockedMail(setupMockedMimeMessage(MockSpamd.GTUBE))); SpamAssassinHandler handler = new SpamAssassinHandler(new NoopMetricFactory()); handler.setSpamdHost(SPAMD_HOST); handler.setSpamdPort(spamd.getPort()); handler.setSpamdRejectionHits(2000.0); HookResult response = handler.onMessage(session, mockedMail); assertThat(HookReturnCode.declined()).describedAs("Email was not rejected").isEqualTo(response.getResult()); assertThat("YES").describedAs("email was spam").isEqualTo(mockedMail.getAttribute(SpamAssassinResult.FLAG_MAIL_ATTRIBUTE_NAME)); assertThat(mockedMail.getAttribute(STATUS_MAIL_ATTRIBUTE_NAME)).withFailMessage("spam hits").isNotNull(); }
@Test public void testNonSpam() throws Exception { SMTPSession session = setupMockedSMTPSession(setupMockedMail(setupMockedMimeMessage("test"))); SpamAssassinHandler handler = new SpamAssassinHandler(new NoopMetricFactory()); handler.setSpamdHost(SPAMD_HOST); handler.setSpamdPort(spamd.getPort()); handler.setSpamdRejectionHits(200.0); HookResult response = handler.onMessage(session, mockedMail); assertThat(HookReturnCode.declined()).describedAs("Email was not rejected").isEqualTo(response.getResult()); assertThat("NO").describedAs("email was not spam").isEqualTo(mockedMail.getAttribute(SpamAssassinResult.FLAG_MAIL_ATTRIBUTE_NAME)); assertThat(mockedMail.getAttribute(STATUS_MAIL_ATTRIBUTE_NAME)).withFailMessage("spam hits").isNotNull(); }
@Test public void testSpamReject() throws Exception { SMTPSession session = setupMockedSMTPSession(setupMockedMail(setupMockedMimeMessage(MockSpamd.GTUBE))); SpamAssassinHandler handler = new SpamAssassinHandler(new NoopMetricFactory()); handler.setSpamdHost(SPAMD_HOST); handler.setSpamdPort(spamd.getPort()); handler.setSpamdRejectionHits(200.0); HookResult response = handler.onMessage(session, mockedMail); assertThat(HookReturnCode.deny()).describedAs("Email was rejected").isEqualTo(response.getResult()); assertThat("YES").describedAs("email was spam").isEqualTo(mockedMail.getAttribute(SpamAssassinResult.FLAG_MAIL_ATTRIBUTE_NAME)); assertThat(mockedMail.getAttribute(STATUS_MAIL_ATTRIBUTE_NAME)).withFailMessage("spam hits").isNotNull(); } }
public void configure(HierarchicalConfiguration config) throws ConfigurationException { setSpamdHost(config.getString("spamdHost","localhost")); setSpamdPort(config.getInt("spamdPort",783)); setSpamdRejectionHits(config.getDouble("spamdRejectionHits", 0.0)); }