juergen 2003/04/02 06:49:34
Modified:
testsuite/testsuite/junit/src/org/apache/slide/testsuite/testtools/tprocessor
TProcessors.java
Log:
the allow header may be sorted in various ways 9depending on the used server or Java
version). ignore the sequence.
Revision Changes Path
1.49 +42 -49
jakarta-slide/testsuite/testsuite/junit/src/org/apache/slide/testsuite/testtools/tprocessor/TProcessors.java
Index: TProcessors.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/testsuite/testsuite/junit/src/org/apache/slide/testsuite/testtools/tprocessor/TProcessors.java,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -r1.48 -r1.49
--- TProcessors.java 21 Mar 2003 13:01:40 -0000 1.48
+++ TProcessors.java 2 Apr 2003 14:49:33 -0000 1.49
@@ -64,25 +64,10 @@
package org.apache.slide.testsuite.testtools.tprocessor;
//java
-import java.io.BufferedReader;
-import java.io.ByteArrayInputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.PrintStream;
-import java.io.Reader;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.io.UnsupportedEncodingException;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Stack;
-import java.util.StringTokenizer;
-import java.util.Vector;
+import java.io.*;
+import java.util.*;
+import org.apache.webdav.lib.methods.*;
+
import org.apache.commons.httpclient.Credentials;
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
@@ -93,31 +78,6 @@
import org.apache.util.URLUtil;
import org.apache.util.WebdavStatus;
import org.apache.webdav.lib.WebdavState;
-import org.apache.webdav.lib.methods.AclMethod;
-import org.apache.webdav.lib.methods.CheckinMethod;
-import org.apache.webdav.lib.methods.CheckoutMethod;
-import org.apache.webdav.lib.methods.CopyMethod;
-import org.apache.webdav.lib.methods.DeleteMethod;
-import org.apache.webdav.lib.methods.GetMethod;
-import org.apache.webdav.lib.methods.HeadMethod;
-import org.apache.webdav.lib.methods.HttpRequestBodyMethodBase;
-import org.apache.webdav.lib.methods.LabelMethod;
-import org.apache.webdav.lib.methods.LockMethod;
-import org.apache.webdav.lib.methods.MkWorkspaceMethod;
-import org.apache.webdav.lib.methods.MkcolMethod;
-import org.apache.webdav.lib.methods.MoveMethod;
-import org.apache.webdav.lib.methods.OptionsMethod;
-import org.apache.webdav.lib.methods.PostMethod;
-import org.apache.webdav.lib.methods.PropFindMethod;
-import org.apache.webdav.lib.methods.PropPatchMethod;
-import org.apache.webdav.lib.methods.PutMethod;
-import org.apache.webdav.lib.methods.ReportMethod;
-import org.apache.webdav.lib.methods.SearchMethod;
-import org.apache.webdav.lib.methods.UncheckoutMethod;
-import org.apache.webdav.lib.methods.UnlockMethod;
-import org.apache.webdav.lib.methods.UpdateMethod;
-import org.apache.webdav.lib.methods.VersionControlMethod;
-import org.apache.webdav.lib.methods.XMLResponseMethodBase;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
@@ -1155,7 +1115,40 @@
boolean result = false;
result = received != null &&
(expected.getValue().equals("*") ||
-
received.getValue().equalsIgnoreCase(expected.getValue()));
+ compareOneHeader(expected, received));
+ return result;
+ }
+
+
+
+ private boolean compareOneHeader(Header expected, Header received){
+ boolean result = false;
+ if (expected.getName().equals("Allow")) {
+ result = compareAllowHeader(expected, received);
+ } else {
+ result = received.getValue().equalsIgnoreCase(expected.getValue());
+ }
+ return result;
+ }
+
+
+
+ private boolean compareAllowHeader(Header expected, Header received){
+ boolean result = false;
+ HashSet expList = tokeniseCommaList(expected.getValue());
+ HashSet recList = tokeniseCommaList(received.getValue());
+ result = expList.equals(expList);
+ return result;
+ }
+
+ private HashSet tokeniseCommaList(String value){
+ HashSet result = new HashSet();
+ StringTokenizer iter = new StringTokenizer(value, ",");
+ while (iter.hasMoreElements())
+ {
+ String element = (String)iter.nextElement();
+ result.add(element);
+ }
return result;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]