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;
@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
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) {
jo.put("metadataOnly", true);
jo.put("suspend", true);
jo.put("delivery", JSObject);
+ jo.put("sync", false);
return jo;
}
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)));
}
jo.put("metadataOnly", true);
jo.put("suspend", true);
jo.put("delivery", JSObject);
+ jo.put("sync", true);
return jo;
}
return true;
}
};
- FieldUtils.writeDeclaredStaticField(BaseServlet.class, "maxSubs", 10, true);
subscribeServlet.doPost(request, response);
verify(response).setStatus(eq(HttpServletResponse.SC_CREATED));
}
@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");
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<String> authAddressesAndNetworks = new HashSet<String>();
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", 1, true);
}
private void setBehalfHeader(String headerValue) {
when(request.getHeader("X-ATT-DR-ON-BEHALF-OF-GROUP")).thenReturn("stub_subjectGroup");
}
-
-}
\ No newline at end of file
+}