@Test(dataProvider = "methods") public void testHeaderParamOnPOST(String method) { assertHeaderOverridesMethod("POST", method.toUpperCase()); assertHeaderOverridesMethod("POST", method.toLowerCase()); }
@Test(dataProvider = "methods") public void testHeaderDoesNotOverrideOnGET(String method) { assertHeaderThrowsException("GET", method.toUpperCase()); assertHeaderThrowsException("GET", method.toLowerCase()); }
@Test(dataProvider = "methods") public void testQueryParamOnPOST(String method) { assertQueryParamOverridesMethod("POST", method.toUpperCase()); assertQueryParamOverridesMethod("POST", method.toLowerCase()); }
private static void assertHeaderThrowsException(String requestMethod, String override) { try { testHeader(requestMethod, override); fail("Expected WebApplicationException to be thrown"); } catch (WebApplicationException e) { assertEquals(e.getResponse().getStatus(), Response.Status.BAD_REQUEST.getStatusCode()); } }
private static void assertQueryParamThrowsException(String requestMethod, String override) { try { testQueryParam(requestMethod, override); fail("Expected WebApplicationException to be thrown"); } catch (WebApplicationException e) { assertEquals(e.getResponse().getStatus(), Response.Status.BAD_REQUEST.getStatusCode()); } }
@Test(dataProvider = "methods") public void testQueryParamDoesNotOverrideOnDELETE(String method) { assertQueryParamThrowsException("DELETE", method.toUpperCase()); assertQueryParamThrowsException("DELETE", method.toLowerCase()); }
private static void assertHeaderOverridesMethod(String requestMethod, String override) { String resultMethod = testHeader(requestMethod, override); assertEqualsIgnoreCase(resultMethod, override); }
private static void assertQueryParamOverridesMethod(String requestMethod, String override) { String resultMethod = testQueryParam(requestMethod, override); assertEqualsIgnoreCase(resultMethod, override); }
@Test(dataProvider = "methods") public void testQueryParamDoesNotOverrideOnGET(String method) { assertQueryParamThrowsException("GET", method.toUpperCase()); assertQueryParamThrowsException("GET", method.toLowerCase()); }
@Test(dataProvider = "methods") public void testHeaderDoesNotOverrideOnDELETE(String method) { assertHeaderThrowsException("DELETE", method.toUpperCase()); assertHeaderThrowsException("DELETE", method.toLowerCase()); }