X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=datarouter-prov%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fdmaap%2Fdatarouter%2Fprovisioning%2FSubscribeServletTest.java;h=0b5c23fe70679224829b9ed074425e509dac572f;hb=ee6fa61e2cd7df99891092709765235b6166a041;hp=2d89b5ea809dd8288b4b14180b3cc6d51e130773;hpb=56f91af26f180541a9caa0710578bcccde3734ff;p=dmaap%2Fdatarouter.git diff --git a/datarouter-prov/src/test/java/org/onap/dmaap/datarouter/provisioning/SubscribeServletTest.java b/datarouter-prov/src/test/java/org/onap/dmaap/datarouter/provisioning/SubscribeServletTest.java old mode 100644 new mode 100755 index 2d89b5ea..0b5c23fe --- a/datarouter-prov/src/test/java/org/onap/dmaap/datarouter/provisioning/SubscribeServletTest.java +++ b/datarouter-prov/src/test/java/org/onap/dmaap/datarouter/provisioning/SubscribeServletTest.java @@ -22,9 +22,10 @@ ******************************************************************************/ package org.onap.dmaap.datarouter.provisioning; +import ch.qos.logback.classic.spi.ILoggingEvent; +import ch.qos.logback.core.read.ListAppender; import org.apache.commons.lang3.reflect.FieldUtils; import org.jetbrains.annotations.NotNull; -import org.json.JSONArray; import org.json.JSONObject; import org.junit.Before; import org.junit.Test; @@ -54,7 +55,7 @@ import static org.onap.dmaap.datarouter.provisioning.BaseServlet.BEHALF_HEADER; @RunWith(PowerMockRunner.class) @SuppressStaticInitializationFor({"org.onap.dmaap.datarouter.provisioning.beans.Feed", "org.onap.dmaap.datarouter.provisioning.beans.Subscription"}) -public class SubscribeServletTest extends DrServletTestBase{ +public class SubscribeServletTest extends DrServletTestBase { private static SubscribeServlet subscribeServlet; @Mock @@ -62,9 +63,12 @@ public class SubscribeServletTest extends DrServletTestBase{ @Mock private HttpServletResponse response; + ListAppender listAppender; + @Before public void setUp() throws Exception { super.setUp(); + listAppender = setTestLogger(SubscribeServlet.class); subscribeServlet = new SubscribeServlet(); setAuthoriserToReturnRequestIsAuthorized(); setPokerToNotCreateTimersWhenDeleteFeedIsCalled(); @@ -77,13 +81,16 @@ public class SubscribeServletTest extends DrServletTestBase{ public void Given_Request_Is_HTTP_DELETE_SC_METHOD_NOT_ALLOWED_Response_Is_Generated() throws Exception { subscribeServlet.doDelete(request, response); verify(response).sendError(eq(HttpServletResponse.SC_METHOD_NOT_ALLOWED), argThat(notNullValue(String.class))); + verifyEnteringExitCalled(listAppender); } @Test public void Given_Request_Is_HTTP_GET_And_Is_Not_Secure_When_HTTPS_Is_Required_Then_Forbidden_Response_Is_Generated() throws Exception { when(request.isSecure()).thenReturn(false); + FieldUtils.writeDeclaredStaticField(BaseServlet.class, "isAddressAuthEnabled", "true", true); subscribeServlet.doGet(request, response); verify(response).sendError(eq(HttpServletResponse.SC_FORBIDDEN), argThat(notNullValue(String.class))); + verifyEnteringExitCalled(listAppender); } @Test @@ -127,6 +134,7 @@ public class SubscribeServletTest extends DrServletTestBase{ PowerMockito.when(Subscription.getSubscriptionUrlList(anyInt())).thenReturn(list); subscribeServlet.doGet(request, response); verify(response).setStatus(eq(HttpServletResponse.SC_OK)); + verifyEnteringExitCalled(listAppender); } @@ -134,12 +142,15 @@ public class SubscribeServletTest extends DrServletTestBase{ public void Given_Request_Is_HTTP_PUT_SC_METHOD_NOT_ALLOWED_Response_Is_Generated() throws Exception { subscribeServlet.doPut(request, response); verify(response).sendError(eq(HttpServletResponse.SC_METHOD_NOT_ALLOWED), argThat(notNullValue(String.class))); + verifyEnteringExitCalled(listAppender); } @Test public void Given_Request_Is_HTTP_POST_And_Is_Not_Secure_When_HTTPS_Is_Required_Then_Forbidden_Response_Is_Generated() throws Exception { when(request.isSecure()).thenReturn(false); + FieldUtils.writeDeclaredStaticField(BaseServlet.class, "isAddressAuthEnabled", "true", true); subscribeServlet.doPost(request, response); verify(response).sendError(eq(HttpServletResponse.SC_FORBIDDEN), argThat(notNullValue(String.class))); + verifyEnteringExitCalled(listAppender); } @Test @@ -174,7 +185,7 @@ public class SubscribeServletTest extends DrServletTestBase{ @Test public void Given_Request_Is_HTTP_POST_And_Content_Header_Is_Not_Supported_Type_Then_Unsupported_Media_Type_Response_Is_Generated() throws Exception { - when(request.getHeader("Content-Type")).thenReturn("application/vnd.att-dr.feed; version=1.1"); + when(request.getHeader("Content-Type")).thenReturn("application/vnd.dmaap-dr.feed; version=1.1"); when(request.getContentType()).thenReturn("stub_contentType"); subscribeServlet.doPost(request, response); verify(response).sendError(eq(HttpServletResponse.SC_UNSUPPORTED_MEDIA_TYPE), argThat(notNullValue(String.class))); @@ -202,6 +213,7 @@ public class SubscribeServletTest extends DrServletTestBase{ public void Given_Request_Is_HTTP_POST_And_POST_Fails_Bad_Request_Response_Is_Generated() throws Exception { PowerMockito.mockStatic(Subscription.class); PowerMockito.when(Subscription.getSubscriptionMatching(mock(Subscription.class))).thenReturn(null); + PowerMockito.when(Subscription.countActiveSubscriptions()).thenReturn(0); JSONObject JSObject = buildRequestJsonObject(); SubscribeServlet subscribeServlet = new SubscribeServlet() { protected JSONObject getJSONfromInput(HttpServletRequest req) { @@ -211,6 +223,7 @@ public class SubscribeServletTest extends DrServletTestBase{ jo.put("metadataOnly", true); jo.put("suspend", true); jo.put("delivery", JSObject); + jo.put("sync", false); return jo; } @@ -219,7 +232,6 @@ public class SubscribeServletTest extends DrServletTestBase{ return false; } }; - FieldUtils.writeDeclaredStaticField(BaseServlet.class, "maxSubs", 10, true); subscribeServlet.doPost(request, response); verify(response).sendError(eq(HttpServletResponse.SC_INTERNAL_SERVER_ERROR), argThat(notNullValue(String.class))); } @@ -240,6 +252,7 @@ public class SubscribeServletTest extends DrServletTestBase{ jo.put("metadataOnly", true); jo.put("suspend", true); jo.put("delivery", JSObject); + jo.put("sync", true); return jo; } @@ -248,27 +261,15 @@ public class SubscribeServletTest extends DrServletTestBase{ return true; } }; - FieldUtils.writeDeclaredStaticField(BaseServlet.class, "maxSubs", 10, true); subscribeServlet.doPost(request, response); verify(response).setStatus(eq(HttpServletResponse.SC_CREATED)); + verifyEnteringExitCalled(listAppender); } @NotNull private JSONObject buildRequestJsonObject() { JSONObject JSObject = new JSONObject(); - JSONArray endpointIDs = new JSONArray(); - JSONObject JOEndpointIDs = new JSONObject(); - JOEndpointIDs.put("id", "stub_endpoint_id"); - JOEndpointIDs.put("password", "stub_endpoint_password"); - endpointIDs.put(JOEndpointIDs); - - JSONArray endpointAddresses = new JSONArray(); - endpointAddresses.put("127.0.0.1"); - - JSObject.put("classification", "stub_classification"); - JSObject.put("endpoint_ids", endpointIDs); - JSObject.put("endpoint_addrs", endpointAddresses); JSObject.put("url", "https://stub_address"); JSObject.put("use100", "true"); JSObject.put("password", "stub_password"); @@ -276,22 +277,13 @@ public class SubscribeServletTest extends DrServletTestBase{ return JSObject; } - - - private void initialiseBaseServletToBypassRetreiviingInitialisationParametersFromDatabase() throws IllegalAccessException { - FieldUtils.writeDeclaredStaticField(BaseServlet.class, "startmsgFlag", false, true); - SynchronizerTask synchronizerTask = mock(SynchronizerTask.class); - when(synchronizerTask.getState()).thenReturn(SynchronizerTask.UNKNOWN); - FieldUtils.writeDeclaredStaticField(SynchronizerTask.class, "synctask", synchronizerTask, true); - FieldUtils.writeDeclaredStaticField(BaseServlet.class, "max_subs", 10, true); - } - private void setUpValidSecurityOnHttpRequest() throws Exception { when(request.isSecure()).thenReturn(true); Set authAddressesAndNetworks = new HashSet(); authAddressesAndNetworks.add(("127.0.0.1")); FieldUtils.writeDeclaredStaticField(BaseServlet.class, "authorizedAddressesAndNetworks", authAddressesAndNetworks, true); FieldUtils.writeDeclaredStaticField(BaseServlet.class, "requireCert", false, true); + FieldUtils.writeDeclaredStaticField(BaseServlet.class, "maxSubs", 100, true); } private void setBehalfHeader(String headerValue) { @@ -348,9 +340,8 @@ public class SubscribeServletTest extends DrServletTestBase{ } private void setUpValidContentHeadersAndJSONOnHttpRequest() { - when(request.getHeader("Content-Type")).thenReturn("application/vnd.att-dr.subscription; version=1.0"); - when(request.getHeader("X-ATT-DR-ON-BEHALF-OF-GROUP")).thenReturn("stub_subjectGroup"); + when(request.getHeader("Content-Type")).thenReturn("application/vnd.dmaap-dr.subscription; version=1.0"); + when(request.getHeader("X-DMAAP-DR-ON-BEHALF-OF-GROUP")).thenReturn("stub_subjectGroup"); } - -} \ No newline at end of file +}