From 0beb749f236545dd7c0dbb167892ff7395b8c9c6 Mon Sep 17 00:00:00 2001 From: Konstantin Schaper Date: Fri, 30 Oct 2020 12:20:45 +0100 Subject: [PATCH] adjust scm client check and update unit test accordingly --- .../java/sonia/scm/web/protocol/HttpProtocolServlet.java | 8 ++++---- .../sonia/scm/web/protocol/HttpProtocolServletTest.java | 7 ++----- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/scm-webapp/src/main/java/sonia/scm/web/protocol/HttpProtocolServlet.java b/scm-webapp/src/main/java/sonia/scm/web/protocol/HttpProtocolServlet.java index cb48c329c2..1e56817e62 100644 --- a/scm-webapp/src/main/java/sonia/scm/web/protocol/HttpProtocolServlet.java +++ b/scm-webapp/src/main/java/sonia/scm/web/protocol/HttpProtocolServlet.java @@ -74,10 +74,7 @@ public class HttpProtocolServlet extends HttpServlet { @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { UserAgent userAgent = userAgentParser.parse(request); - if (userAgent.isBrowser()) { - log.trace("dispatch browser request for user agent {}", userAgent); - dispatcher.dispatch(request, response, request.getRequestURI()); - } else { + if (userAgent.isScmClient()) { String pathInfo = request.getPathInfo(); Optional namespaceAndName = pathExtractor.fromUri(pathInfo); if (namespaceAndName.isPresent()) { @@ -86,6 +83,9 @@ public class HttpProtocolServlet extends HttpServlet { log.debug("namespace and name not found in request path {}", pathInfo); response.setStatus(HttpStatus.SC_BAD_REQUEST); } + } else { + log.trace("dispatch browser request for user agent {}", userAgent); + dispatcher.dispatch(request, response, request.getRequestURI()); } } diff --git a/scm-webapp/src/test/java/sonia/scm/web/protocol/HttpProtocolServletTest.java b/scm-webapp/src/test/java/sonia/scm/web/protocol/HttpProtocolServletTest.java index 7e01e0b1d4..9dac395df9 100644 --- a/scm-webapp/src/test/java/sonia/scm/web/protocol/HttpProtocolServletTest.java +++ b/scm-webapp/src/test/java/sonia/scm/web/protocol/HttpProtocolServletTest.java @@ -91,15 +91,12 @@ class HttpProtocolServletTest { @BeforeEach void prepareMocks() { when(userAgentParser.parse(request)).thenReturn(userAgent); - when(userAgent.isBrowser()).thenReturn(true); + when(userAgent.isScmClient()).thenReturn(false); when(request.getRequestURI()).thenReturn("uri"); } @Test void shouldDispatchBrowserRequests() throws ServletException, IOException { - when(userAgent.isBrowser()).thenReturn(true); - when(request.getRequestURI()).thenReturn("uri"); - servlet.service(request, response); verify(dispatcher).dispatch(request, response, "uri"); @@ -113,7 +110,7 @@ class HttpProtocolServletTest { @BeforeEach void prepareMocks() { when(userAgentParser.parse(request)).thenReturn(userAgent); - when(userAgent.isBrowser()).thenReturn(false); + when(userAgent.isScmClient()).thenReturn(true); } @Test