You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by Norman Maurer <nm...@byteaction.de> on 2006/05/30 12:54:07 UTC
Re: svn commit: r410236 - in
/james/server/trunk/src/test/org/apache/james/transport/matchers:
AllTest.java FetchedFromTest.java HasHeaderTest.java
Anyone has problems with adding all this junit tests? I think haven
1000th of tests is btter then no test.. So we can really get sure that
all work as espected when making changes..
I also will continue this work without reporting to mailling list and
commit if noone has problems with this.
bye
Norman
Am Dienstag, den 30.05.2006, 10:44 +0000 schrieb norman@apache.org:
> Author: norman
> Date: Tue May 30 03:44:56 2006
> New Revision: 410236
>
> URL: http://svn.apache.org/viewvc?rev=410236&view=rev
> Log:
> -Add junit test for FetchedFrom matcher
> -use the right Assert methods
>
> Added:
> james/server/trunk/src/test/org/apache/james/transport/matchers/FetchedFromTest.java
> Modified:
> james/server/trunk/src/test/org/apache/james/transport/matchers/AllTest.java
> james/server/trunk/src/test/org/apache/james/transport/matchers/HasHeaderTest.java
>
> Modified: james/server/trunk/src/test/org/apache/james/transport/matchers/AllTest.java
> URL: http://svn.apache.org/viewvc/james/server/trunk/src/test/org/apache/james/transport/matchers/AllTest.java?rev=410236&r1=410235&r2=410236&view=diff
> ==============================================================================
> --- james/server/trunk/src/test/org/apache/james/transport/matchers/AllTest.java (original)
> +++ james/server/trunk/src/test/org/apache/james/transport/matchers/AllTest.java Tue May 30 03:44:56 2006
> @@ -27,6 +27,7 @@
>
> import java.io.UnsupportedEncodingException;
> import java.util.Arrays;
> +import java.util.Collection;
>
> import junit.framework.TestCase;
>
> @@ -59,9 +60,11 @@
> setupMockedMail();
> setupMatcher();
>
> - assertTrue(matcher.match(mockedMail) != null);
> - assertEquals(matcher.match(mockedMail).size(), mockedMail
> - .getRecipients().size());
> + Collection matchedRecipients = matcher.match(mockedMail);
> +
> + assertNotNull(matchedRecipients);
> + assertEquals(matchedRecipients.size(), mockedMail.getRecipients()
> + .size());
> }
>
> }
>
> Added: james/server/trunk/src/test/org/apache/james/transport/matchers/FetchedFromTest.java
> URL: http://svn.apache.org/viewvc/james/server/trunk/src/test/org/apache/james/transport/matchers/FetchedFromTest.java?rev=410236&view=auto
> ==============================================================================
> --- james/server/trunk/src/test/org/apache/james/transport/matchers/FetchedFromTest.java (added)
> +++ james/server/trunk/src/test/org/apache/james/transport/matchers/FetchedFromTest.java Tue May 30 03:44:56 2006
> @@ -0,0 +1,139 @@
> +/***********************************************************************
> + * Copyright (c) 2006 The Apache Software Foundation. *
> + * All rights reserved. *
> + * ------------------------------------------------------------------- *
> + * Licensed under the Apache License, Version 2.0 (the "License"); you *
> + * may not use this file except in compliance with the License. You *
> + * may obtain a copy of the License at: *
> + * *
> + * http://www.apache.org/licenses/LICENSE-2.0 *
> + * *
> + * Unless required by applicable law or agreed to in writing, software *
> + * distributed under the License is distributed on an "AS IS" BASIS, *
> + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or *
> + * implied. See the License for the specific language governing *
> + * permissions and limitations under the License. *
> + ***********************************************************************/
> +
> +package org.apache.james.transport.matchers;
> +
> +import org.apache.james.test.mock.javaxmail.MockMimeMessage;
> +import org.apache.james.test.mock.mailet.MockMail;
> +import org.apache.james.test.mock.mailet.MockMailContext;
> +import org.apache.james.test.mock.mailet.MockMatcherConfig;
> +
> +import org.apache.mailet.Matcher;
> +
> +import javax.mail.MessagingException;
> +import javax.mail.internet.InternetAddress;
> +import javax.mail.internet.MimeMessage;
> +import javax.mail.internet.MimeMessage.RecipientType;
> +
> +import java.io.UnsupportedEncodingException;
> +import java.util.Arrays;
> +import java.util.Collection;
> +
> +import junit.framework.TestCase;
> +
> +public class FetchedFromTest extends TestCase {
> +
> + private MimeMessage mockedMimeMessage;
> +
> + private MockMail mockedMail;
> +
> + private Matcher matcher;
> +
> + private final String HEADER_NAME = "X-fetched-from";
> +
> + private final String HEADER_VALUE = "james-user";
> +
> + private String headerName = "defaultHeaderName";
> +
> + private String headerValue = "defaultHeaderValue";
> +
> + public FetchedFromTest(String arg0) throws UnsupportedEncodingException {
> + super(arg0);
> + }
> +
> + private void setHeaderName(String headerName) {
> + this.headerName = headerName;
> + }
> +
> + private void setHeaderValue(String headerValue) {
> + this.headerValue = headerValue;
> + }
> +
> + private void setupMockedMimeMessage() throws MessagingException {
> + String sender = "test@james.apache.org";
> + String rcpt = "test2@james.apache.org";
> +
> + mockedMimeMessage = new MockMimeMessage();
> + mockedMimeMessage.setFrom(new InternetAddress(sender));
> + mockedMimeMessage.setRecipients(RecipientType.TO, rcpt);
> + mockedMimeMessage.setHeader(headerName, headerValue);
> + mockedMimeMessage.setSubject("testmail");
> + mockedMimeMessage.setText("testtext");
> + mockedMimeMessage.saveChanges();
> +
> + }
> +
> + private void setupMockedMail(MimeMessage m) {
> + mockedMail = new MockMail();
> + mockedMail.setMessage(m);
> + mockedMail.setRecipients(Arrays.asList(new String[] {
> + "test@james.apache.org", "test2@james.apache.org" }));
> +
> + }
> +
> + private void setupMatcher() throws MessagingException {
> + setupMockedMimeMessage();
> + matcher = new FetchedFrom();
> + MockMatcherConfig mci = new MockMatcherConfig("FetchedFrom="
> + + HEADER_VALUE, new MockMailContext());
> + matcher.init(mci);
> + }
> +
> + // test if the Header was matched
> + public void testHeaderIsMatched() throws MessagingException {
> + setHeaderName(HEADER_NAME);
> + setHeaderValue(HEADER_VALUE);
> +
> + setupMockedMimeMessage();
> + setupMockedMail(mockedMimeMessage);
> + setupMatcher();
> +
> + Collection matchedRecipients = matcher.match(mockedMail);
> + assertNotNull(matchedRecipients);
> + assertEquals(matchedRecipients.size(), mockedMail.getRecipients()
> + .size());
> + }
> +
> + // test if the Header was not matched
> + public void testHeaderIsNotMatched() throws MessagingException {
> + setHeaderName(HEADER_NAME);
> + setHeaderValue(headerValue);
> +
> + setupMockedMimeMessage();
> + setupMockedMail(mockedMimeMessage);
> + setupMatcher();
> +
> + Collection matchedRecipients = matcher.match(mockedMail);
> + assertNull(matchedRecipients);
> + }
> +
> + // test if the Header was removed after matched
> + public void testHeaderWasRemovedAfterMatched() throws MessagingException {
> + setHeaderName(HEADER_NAME);
> + setHeaderValue(HEADER_VALUE);
> +
> + setupMockedMimeMessage();
> + setupMockedMail(mockedMimeMessage);
> + setupMatcher();
> +
> + Collection matchedRecipients = matcher.match(mockedMail);
> + Collection matchedRecipients2 = matcher.match(mockedMail);
> +
> + assertNotNull(matchedRecipients);
> + assertNull(matchedRecipients2);
> + }
> +}
>
> Modified: james/server/trunk/src/test/org/apache/james/transport/matchers/HasHeaderTest.java
> URL: http://svn.apache.org/viewvc/james/server/trunk/src/test/org/apache/james/transport/matchers/HasHeaderTest.java?rev=410236&r1=410235&r2=410236&view=diff
> ==============================================================================
> --- james/server/trunk/src/test/org/apache/james/transport/matchers/HasHeaderTest.java (original)
> +++ james/server/trunk/src/test/org/apache/james/transport/matchers/HasHeaderTest.java Tue May 30 03:44:56 2006
> @@ -31,6 +31,7 @@
>
> import java.io.UnsupportedEncodingException;
> import java.util.Arrays;
> +import java.util.Collection;
>
> import junit.framework.TestCase;
>
> @@ -101,15 +102,21 @@
> setupMockedMail(mockedMimeMessage);
> setupMatcher();
>
> - assertTrue(matcher.match(mockedMail) != null);
> + Collection matchedRecipients = matcher.match(mockedMail);
> +
> + assertNotNull(matchedRecipients);
> + assertEquals(matchedRecipients.size(), mockedMail.getRecipients()
> + .size());
> }
>
> - // test if the Header was matched
> + // test if the Header was not matched
> public void testHeaderIsNotMatched() throws MessagingException {
> setupMockedMimeMessage();
> setupMockedMail(mockedMimeMessage);
> setupMatcher();
>
> - assertTrue(matcher.match(mockedMail) == null);
> + Collection matchedRecipients = matcher.match(mockedMail);
> +
> + assertNull(matchedRecipients);
> }
> }
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
> For additional commands, e-mail: server-dev-help@james.apache.org
>
> !EXCUBATOR:1,447c23ef37021446011432!