[Osgi-messages] SF.net SVN: osgi:[257] papoose-cmpn/trunk/http/src
Status: Beta
Brought to you by:
maguro
|
From: <osg...@li...> - 2010-02-25 03:17:30
|
Revision: 257
http://osgi.svn.sourceforge.net/osgi/?rev=257&view=rev
Author: maguro
Date: 2010-02-25 03:17:24 +0000 (Thu, 25 Feb 2010)
Log Message:
-----------
Fixed failed security check
Modified Paths:
--------------
papoose-cmpn/trunk/http/src/main/java/org/papoose/http/ServletDispatcher.java
papoose-cmpn/trunk/http/src/test/java/org/papoose/http/ServletDispatcherTest.java
Modified: papoose-cmpn/trunk/http/src/main/java/org/papoose/http/ServletDispatcher.java
===================================================================
--- papoose-cmpn/trunk/http/src/main/java/org/papoose/http/ServletDispatcher.java 2010-02-25 01:37:32 UTC (rev 256)
+++ papoose-cmpn/trunk/http/src/main/java/org/papoose/http/ServletDispatcher.java 2010-02-25 03:17:24 UTC (rev 257)
@@ -55,6 +55,10 @@
r = registration;
break done;
}
+ else
+ {
+ return;
+ }
}
}
Modified: papoose-cmpn/trunk/http/src/test/java/org/papoose/http/ServletDispatcherTest.java
===================================================================
--- papoose-cmpn/trunk/http/src/test/java/org/papoose/http/ServletDispatcherTest.java 2010-02-25 01:37:32 UTC (rev 256)
+++ papoose-cmpn/trunk/http/src/test/java/org/papoose/http/ServletDispatcherTest.java 2010-02-25 03:17:24 UTC (rev 257)
@@ -84,6 +84,34 @@
}
@Test
+ public void testFailedSecurityCheck() throws Exception
+ {
+ HttpServletRequest request = mock(HttpServletRequest.class);
+ HttpServletResponse response = mock(HttpServletResponse.class);
+ ServletDispatcher dispatcher = new ServletDispatcher();
+ Servlet servlet = mock(Servlet.class);
+ HttpContext context = mock(HttpContext.class);
+ ServletRegistration registration = new ServletRegistration("/a/b", servlet, context);
+
+ when(context.handleSecurity(request, response)).thenAnswer(new Answer()
+ {
+ public Boolean answer(InvocationOnMock invocation)
+ {
+ HttpServletResponse resp = (HttpServletResponse) invocation.getArguments()[1];
+ resp.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
+ return false;
+ }
+ });
+ when(request.getPathInfo()).thenReturn("/a/b/c");
+
+ dispatcher.register(registration);
+ dispatcher.service(request, response);
+
+ verify(context, only()).handleSecurity(request, response);
+ verify(response, only()).setStatus(HttpServletResponse.SC_UNAUTHORIZED);
+ }
+
+ @Test
public void testSimplePathRegistrant() throws Exception
{
HttpServletRequest request = mock(HttpServletRequest.class);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|