diff --git a/gateleen-test/src/test/java/org/swisspush/gateleen/hook/ListenerTest.java b/gateleen-test/src/test/java/org/swisspush/gateleen/hook/ListenerTest.java index b22a283d..9f1edd05 100755 --- a/gateleen-test/src/test/java/org/swisspush/gateleen/hook/ListenerTest.java +++ b/gateleen-test/src/test/java/org/swisspush/gateleen/hook/ListenerTest.java @@ -945,8 +945,7 @@ private void checkGETBodyWithAwait(final String requestUrl, final String body) { /** * Test for hookHandleSearch with listener storage path and valid query param.
- * eg. register / unregister: http://localhost:7012/gateleen/server/listenertest/_hooks/listeners/listener/1
- * requestUrl: http://localhost:7012/gateleen/server/listenertest/listener/test?q=testQuery + * requestUrl: http://localhost:7012/playground/server/hooks/v1/registrations/listeners/?q=testQuery */ @Test public void testHookHandleSearch_ListenerPathWithValidQueryParam(TestContext context) { @@ -976,8 +975,7 @@ public void testHookHandleSearch_ListenerPathWithValidQueryParam(TestContext con /** * Test for hookHandleSearch with listener storage path and valid query param but no match found.
- * eg. register / unregister: http://localhost:7012/gateleen/server/listenertest/_hooks/listeners/listener/1
- * requestUrl: http://localhost:7012/gateleen/server/listenertest/listener/test?q=nonMatchingQuery + * requestUrl: http://localhost:7012/playground/server/hooks/v1/registrations/listeners/?q=nonMatchingQuery */ @Test public void testHookHandleSearch_ListenerPathWithNonMatchingQueryParam(TestContext context) { @@ -1011,8 +1009,7 @@ public void testHookHandleSearch_ListenerPathWithNonMatchingQueryParam(TestConte /** * Test for hookHandleSearch with listener storage path and valid query param but no listeners registered.
- * eg. register / unregister: http://localhost:7012/gateleen/server/listenertest/_hooks/listeners/listener/1
- * requestUrl: http://localhost:7012/gateleen/server/listenertest/listener/test?q=someQuery + * requestUrl: http://localhost:7012/playground/server/hooks/v1/registrations/listeners/?q=someQuery */ @Test public void testHookHandleSearch_NoListenersRegistered(TestContext context) { @@ -1039,4 +1036,61 @@ public void testHookHandleSearch_NoListenersRegistered(TestContext context) { async.complete(); } + + @Test + public void testHookHandleSearch_ListenerPathInvalidParam(TestContext context) { + Async async = context.async(); + delete(); + initRoutingRules(); + + String queryParam = "testQuery"; + String listenerPath = "/_hooks/listeners"; + String requestUrl = requestUrlBase + listenerPath + "?www=" + queryParam; + + // Register a listener + TestUtils.registerListener(requestUrlBase + listenerPath, targetUrlBase, new String[]{"GET", "POST"}, null); + + // Send GET request + given().queryParam("www", queryParam) + .when().get(requestUrl) + .then().assertThat().statusCode(400); + + // Validate the response + checkGETStatusCodeWithAwait(requestUrl, 400); + + TestUtils.unregisterListener(requestUrlBase + listenerPath); + + async.complete(); + } + + /** + * Test for hookHandleSearch with listener storage path and no query parameter.
+ * requestUrl: http://localhost:7012/playground/server/hooks/v1/registrations/listeners/?q= + */ + @Test + public void testHookHandleSearch_NoQueryParameter(TestContext context) { + Async async = context.async(); + delete(); + initRoutingRules(); + + String queryParam = ""; + String listenerPath = "/_hooks/listeners"; + String requestUrl = requestUrlBase + listenerPath + "?q=" + queryParam; + + // Register a listener + TestUtils.registerListener(requestUrlBase + listenerPath, targetUrlBase, new String[]{"GET", "POST"}, null); + + // Send GET request + given().queryParam("q", queryParam) + .when().get(requestUrl) + .then().assertThat().statusCode(400); + + // Validate the response + checkGETStatusCodeWithAwait(requestUrl, 400); + + TestUtils.unregisterListener(requestUrlBase + listenerPath); + + async.complete(); + } + }