summaryrefslogtreecommitdiffstats
path: root/dcaedt_be/src/test/java/org/onap/sdc/dcae/filter/LoggingFilterTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'dcaedt_be/src/test/java/org/onap/sdc/dcae/filter/LoggingFilterTest.java')
-rw-r--r--dcaedt_be/src/test/java/org/onap/sdc/dcae/filter/LoggingFilterTest.java119
1 files changed, 119 insertions, 0 deletions
diff --git a/dcaedt_be/src/test/java/org/onap/sdc/dcae/filter/LoggingFilterTest.java b/dcaedt_be/src/test/java/org/onap/sdc/dcae/filter/LoggingFilterTest.java
new file mode 100644
index 0000000..cfe9f56
--- /dev/null
+++ b/dcaedt_be/src/test/java/org/onap/sdc/dcae/filter/LoggingFilterTest.java
@@ -0,0 +1,119 @@
+package org.onap.sdc.dcae.filter;
+
+import org.apache.http.impl.EnglishReasonPhraseCatalog;
+import org.junit.Before;
+import org.junit.Test;
+import org.mockito.Mock;
+import org.mockito.MockitoAnnotations;
+import org.onap.sdc.common.onaplog.Enums.LogLevel;
+import org.onap.sdc.common.onaplog.Enums.OnapLoggerErrorCode;
+import org.onap.sdc.common.onaplog.OnapMDCWrapper;
+
+
+import javax.servlet.*;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Enumeration;
+import java.util.Locale;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.Mockito.never;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+public class LoggingFilterTest {
+ @Mock private HttpServletRequest request;
+ @Mock private HttpServletResponse httpResponse;
+ @Mock private ServletResponse response;
+ @Mock private FilterChain filterChain;
+
+ private FilterConfig filterConfig = new FilterConfig() {
+ @Override
+ public String getFilterName() {
+ return null;
+ }
+
+ @Override
+ public ServletContext getServletContext() {
+ return null;
+ }
+
+ @Override
+ public String getInitParameter(String name) {
+ return null;
+ }
+
+ @Override
+ public Enumeration<String> getInitParameterNames() {
+ return null;
+ }
+ };
+
+ @Before
+ public void setup() {
+ MockitoAnnotations.initMocks(this);
+ }
+
+ @Test
+ public void loggingFilterInstanciationLifeCycle() {
+ LoggingFilter loggingFilter = new LoggingFilter();
+
+ loggingFilter.init(filterConfig);
+
+ loggingFilter.destroy();
+ }
+
+ @Test
+ public void doFilter_healthCheck_noReadingHeader(){
+ LoggingFilter loggingFilter = new LoggingFilter();
+ boolean exceptionThrown = false;
+
+ when(request.getServletPath()).thenReturn("/healthCheck");
+ try {
+ loggingFilter.doFilter(request, response, filterChain);
+ }
+ catch (Exception e){
+ exceptionThrown = true;
+ }
+ verify(request,never()).getHeader("X-ECOMP-RequestID");
+ assertEquals(exceptionThrown, false);
+ }
+
+ @Test
+ public void doFilter_notHealthCheck_noReadingHeader(){
+ LoggingFilter loggingFilter = new LoggingFilter();
+ boolean exceptionThrown = false;
+
+ when(request.getServletPath()).thenReturn("/notHealthCheck");
+ try {
+ loggingFilter.doFilter(request, response, filterChain);
+ }
+ catch (Exception e){
+ exceptionThrown = true;
+ }
+ verify(request).getHeader("X-ECOMP-RequestID");
+ assertEquals(exceptionThrown, false);
+ }
+ @Test
+ public void doFilter_InternalServerError(){
+ LoggingFilter loggingFilter = new LoggingFilter();
+ boolean exceptionThrown = false;
+
+ when(request.getServletPath()).thenReturn("/notHealthCheck");
+ try {
+
+ when(httpResponse.getStatus()).thenReturn(500);
+ when(request.getHeader("user-agent")).thenReturn("test");
+
+ loggingFilter.doFilter(request, httpResponse, filterChain);
+ }
+ catch (Exception e){
+ exceptionThrown = true;
+ }
+ verify(request).getHeader("X-ECOMP-RequestID");
+ assertEquals(exceptionThrown, false);
+ }
+
+
+}