Author: fhanik
Date: Tue Apr 20 16:34:27 2010
New Revision: 935984

URL: http://svn.apache.org/viewvc?rev=935984&view=rev
Log:
Add test case for bug 49158

Added:
    tomcat/trunk/test/org/apache/tomcat/util/http/TestBug49158.java   (with 
props)

Added: tomcat/trunk/test/org/apache/tomcat/util/http/TestBug49158.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/tomcat/util/http/TestBug49158.java?rev=935984&view=auto
==============================================================================
--- tomcat/trunk/test/org/apache/tomcat/util/http/TestBug49158.java (added)
+++ tomcat/trunk/test/org/apache/tomcat/util/http/TestBug49158.java Tue Apr 20 
16:34:27 2010
@@ -0,0 +1,85 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You 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.tomcat.util.http;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+
+import org.apache.catalina.Context;
+import org.apache.catalina.startup.Tomcat;
+import org.apache.tomcat.util.buf.ByteChunk;
+
+/**
+ * Test case for {...@link Cookies}. <b>Note</b> because of the use of 
<code>final
+ * static</code> constants in {...@link Cookies}, each of these tests must be
+ * executed in a new JVM instance. The tests have been place in separate 
classes
+ * to facilitate this when running the unit tests via Ant.
+ */
+public class TestBug49158 extends CookiesBaseTest {
+    public static final String path = "49158";
+    
+    @Override
+    public void testCookiesInstance() throws Exception {
+        Tomcat tomcat = getTomcatInstance();
+        addServlets(tomcat);
+        tomcat.start();
+        Map<String,List<String>> headers = new HashMap<String,List<String>>();
+        ByteChunk res = new ByteChunk(); 
+        getUrl("http://localhost:"; + getPort() + "/"+path, res, headers);
+        List<String> cookieHeaders = headers.get("Set-Cookie");
+        int count = 0;
+        for (String cookieHeader : cookieHeaders) {
+            count++;
+        }
+        assertEquals("There should only be one Set-Cookie header in this 
test",1, count);
+    }
+    
+    public static void addServlets(Tomcat tomcat) {
+        // Must have a real docBase - just use temp
+        Context ctx = 
+            tomcat.addContext("/", System.getProperty("java.io.tmpdir"));
+
+        Tomcat.addServlet(ctx, path, new TestBug49158Servlet());
+        ctx.addServletMapping("/"+path, path);
+    }
+    
+    public static class TestBug49158Servlet extends HttpServlet {
+
+        private static final long serialVersionUID = 2725990508758127399L;
+
+        @Override
+        public void service(HttpServletRequest req, HttpServletResponse res)
+                throws ServletException, IOException {
+            HttpSession session = req.getSession();
+            session.invalidate();
+            session = req.getSession();
+            session.invalidate();
+            session = req.getSession();
+        }
+        
+    }
+        
+}

Propchange: tomcat/trunk/test/org/apache/tomcat/util/http/TestBug49158.java
------------------------------------------------------------------------------
    svn:eol-style = native



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to