Author: norman
Date: Sat May 27 07:21:35 2006
New Revision: 409829

URL: http://svn.apache.org/viewvc?rev=409829&view=rev
Log:
Add junit test for tempError and getAAAARecords.

Modified:
    
james/jspf/trunk/src/test/java/org/apache/james/jspf/SPF1TestMockDNSService.java
    james/jspf/trunk/src/test/resources/org/apache/james/jspf/test.txt

Modified: 
james/jspf/trunk/src/test/java/org/apache/james/jspf/SPF1TestMockDNSService.java
URL: 
http://svn.apache.org/viewvc/james/jspf/trunk/src/test/java/org/apache/james/jspf/SPF1TestMockDNSService.java?rev=409829&r1=409828&r2=409829&view=diff
==============================================================================
--- 
james/jspf/trunk/src/test/java/org/apache/james/jspf/SPF1TestMockDNSService.java
 (original)
+++ 
james/jspf/trunk/src/test/java/org/apache/james/jspf/SPF1TestMockDNSService.java
 Sat May 27 07:21:35 2006
@@ -18,10 +18,13 @@
 package org.apache.james.jspf;
 
 import org.apache.james.jspf.core.DNSService;
+import org.apache.james.jspf.core.IPAddr;
 import org.apache.james.jspf.exceptions.NoneException;
 import org.apache.james.jspf.exceptions.PermErrorException;
 import org.apache.james.jspf.exceptions.TempErrorException;
 
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 
 public final class SPF1TestMockDNSService implements DNSService {
@@ -70,7 +73,11 @@
             if ("spf19-test.foo.bar".equals(hostname))
                 return "v=spf1 +ip6:::1 -all";
             if ("spf20-test.foo.bar".equals(hostname))
-                return "v=spf1 +ip6:2001:1234:5678:9ABC::/64 -all";          
+                return "v=spf1 +ip6:2001:1234:5678:9ABC::/64 -all"; 
+            if ("spf21-test.foo.bar".equals(hostname))
+                return "v=spf1 +a:myipv6a.record -all";
+            if ("spf22-test.foo.bar".equals(hostname))
+                throw new TempErrorException("DNS Server returns temperror");  
        
         }
         throw new IllegalStateException("Mock data not available");
     }
@@ -81,6 +88,8 @@
 
     public List getAAAARecords(String strServer, int mask)
             throws NoneException, PermErrorException, TempErrorException {
+        if ("myipv6a.record".equals(strServer))      
+            return 
getAddressList("FEDC:BA98:7654:3210:FEDC:BA98:7654:3210",mask);
         throw new IllegalStateException("Mock data not available");
     }
 
@@ -115,5 +124,17 @@
 
     public void setTimeOut(int timeOut) {
         // MOCK
+    }
+    
+    public List getAddressList(String list, int mask) throws 
PermErrorException {
+        if (list == null || "".equals(list)) {
+            return new ArrayList();
+        }
+        String[] s = list.split(",");
+        IPAddr[] ips = new IPAddr[s.length];
+        for (int i = 0; i < s.length; i++) {
+            ips[i] = IPAddr.getAddress(s[i], mask);
+        }
+        return new ArrayList(Arrays.asList(ips));
     }
 }

Modified: james/jspf/trunk/src/test/resources/org/apache/james/jspf/test.txt
URL: 
http://svn.apache.org/viewvc/james/jspf/trunk/src/test/resources/org/apache/james/jspf/test.txt?rev=409829&r1=409828&r2=409829&view=diff
==============================================================================
--- james/jspf/trunk/src/test/resources/org/apache/james/jspf/test.txt 
(original)
+++ james/jspf/trunk/src/test/resources/org/apache/james/jspf/test.txt Sat May 
27 07:21:35 2006
@@ -143,3 +143,15 @@
 smtp-comment    /.*/ 
 header-comment  /.*/ spfquery:
 received-spf    /.*/ Received-SPF:
+
+spfquery -ip=FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 
-sender=spf21-test.foo.bar -helo=spf21-test.foo.bar
+result          /.*/ pass
+smtp-comment    /.*/ 
+header-comment  /.*/ spfquery:
+received-spf    /.*/ Received-SPF:
+
+spfquery -ip=192.168.0.1 -sender=spf22-test.foo.bar -helo=spf21-test.foo.bar
+result          /.*/ temperror
+smtp-comment    /.*/ 
+header-comment  /.*/ spfquery:
+received-spf    /.*/ Received-SPF:



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to