Review comments.
diff --git a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/api/client/clientrequestcontext/JAXRSClientIT.java b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/api/client/clientrequestcontext/JAXRSClientIT.java index 6f31ef0..c246a3c 100644 --- a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/api/client/clientrequestcontext/JAXRSClientIT.java +++ b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/api/client/clientrequestcontext/JAXRSClientIT.java
@@ -875,22 +875,19 @@ ContextProvider provider = new ContextProvider() { @Override protected void checkFilterContext(ClientRequestContext context) throws Fault { - assertTrue(context.containsHeaderString("header1", "value"::equalsIgnoreCase)); + assertTrue(context.containsHeaderString("header1", "value"::equals)); assertTrue(context.containsHeaderString("HEADER1", ",", "value2"::equals)); //Incorrect separator character - assertFalse(context.containsHeaderString("header1", ";", "value2"::equalsIgnoreCase)); + assertFalse(context.containsHeaderString("header1", ";", "value2"::equals)); //Shouldn't find first value when separator character is incorrect - assertFalse(context.containsHeaderString("header1", ";", "value1"::equalsIgnoreCase)); + assertFalse(context.containsHeaderString("header1", ";", "Value1"::equalsIgnoreCase)); //Test regular expression - assertTrue(context.containsHeaderString("header1", ";|,", "value2"::equalsIgnoreCase)); + assertTrue(context.containsHeaderString("header1", ";|,", "VALUE2"::equalsIgnoreCase)); //White space in value not trimmed - assertFalse(context.containsHeaderString("header1", "whitespace"::equalsIgnoreCase)); + assertFalse(context.containsHeaderString("header1", "whitespace"::equals)); //Multiple character separator - assertTrue(context.containsHeaderString("header2", "::", "Value5"::equalsIgnoreCase)); - //Test default separator is comma - assertFalse(context.containsHeaderString("header3","value6"::equalsIgnoreCase)); - String entity = "Success"; - Response r = Response.ok(entity).build(); + assertTrue(context.containsHeaderString("header2", ";;", "Value5"::equalsIgnoreCase)); + Response r = Response.ok().build(); context.abortWith(r); } }; @@ -898,13 +895,9 @@ .header("header1", "value") .header("header1", "value1 , value2") .header("header1", "Value3,white space ") - .header("header2", "Value4::Value5") - .header("header3", "value6;value7") + .header("header2", "Value4;;Value5") .buildGet(); Response response = invoke(invocation); - - String entity = response.readEntity(String.class); - assertTrue(entity.contains("Success")); }
diff --git a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/api/client/clientresponsecontext/JAXRSClientIT.java b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/api/client/clientresponsecontext/JAXRSClientIT.java index 5ab7ad8..d5afde1 100644 --- a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/api/client/clientresponsecontext/JAXRSClientIT.java +++ b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/api/client/clientresponsecontext/JAXRSClientIT.java
@@ -438,38 +438,30 @@ */ @Test public void containsHeaderStringTest() throws Fault { - final String header1 = "Header1"; - final String value1 = "no-store"; - final String value2 = "{Max - Age, no-transform}"; - final String header2 = "header2"; - final String value3 = "{no-store;no-transform}"; ContextProvider in = new ContextProvider() { @Override protected void checkFilterContext(ClientRequestContext requestContext, ClientResponseContext responseContext) throws Fault { - assertTrue(responseContext.containsHeaderString("header1", "value"::equalsIgnoreCase)); + assertTrue(responseContext.containsHeaderString("header1", "value"::equals)); assertTrue(responseContext.containsHeaderString("HEADER1", ",", "value2"::equals)); //Incorrect separator character - assertFalse(responseContext.containsHeaderString("header1", ";", "value2"::equalsIgnoreCase)); + assertFalse(responseContext.containsHeaderString("header1", ";", "value2"::equals)); //Shouldn't find first value when separator character is incorrect - assertFalse(responseContext.containsHeaderString("header1", ";", "value1"::equalsIgnoreCase)); + assertFalse(responseContext.containsHeaderString("header1", ";", "Value1"::equalsIgnoreCase)); //Test regular expression - assertTrue(responseContext.containsHeaderString("header1", ";|,", "value2"::equalsIgnoreCase)); + assertTrue(responseContext.containsHeaderString("header1", ";|,", "VALUE2"::equalsIgnoreCase)); //White space in value not trimmed assertFalse(responseContext.containsHeaderString("header1", "whitespace"::equalsIgnoreCase)); //Multiple character separator - assertTrue(responseContext.containsHeaderString("header2", "::", "Value5"::equalsIgnoreCase)); - //Test default separator is comma - assertFalse(responseContext.containsHeaderString("header3","value6"::equalsIgnoreCase)); + assertTrue(responseContext.containsHeaderString("header2", ";;", "Value5"::equalsIgnoreCase)); } }; Response response = Response.ok() .header("header1", "value") .header("header1", "value1 , value2") .header("header1", "Value3,white space ") - .header("header2", "Value4::Value5") - .header("header3", "value6;value7") + .header("header2", "Value4;;Value5") .build(); invokeWithResponseAndAssertStatus(response, Status.OK, in); }
diff --git a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/headers/HttpHeadersTest.java b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/headers/HttpHeadersTest.java index 43a7f41..7a60b23 100644 --- a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/headers/HttpHeadersTest.java +++ b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/headers/HttpHeadersTest.java
@@ -74,27 +74,32 @@ @Path("/contains-headers") public String containsHeadersGet() { sb = new StringBuffer(); - List<String> myHeaders = Arrays.asList("Accept", "Content-Type", "Header3"); + sb.append("containsHeaderString= "); try { - assertTrue(hs.containsHeaderString("accept", "text/html"::equalsIgnoreCase)); - sb.append("Header: accept contains text/html; "); + if(hs.containsHeaderString("accept", "text/html"::equals)) { + sb.append("Test1: accept contains text/html; "); + } //Verify Predicate and separator character usage - assertTrue(hs.containsHeaderString("Accept", ",", "Text/html;Level=1"::equalsIgnoreCase)); - sb.append("Header: accept contains text/html;level=1; "); + if (hs.containsHeaderString("Accept", ",", "Text/html;Level=1"::equalsIgnoreCase)) { + sb.append("Test2: accept contains text/html;level=1; "); + } //Verify incorrect separator character fails - assertFalse(hs.containsHeaderString("Accept", ";", "text/html;level=1"::equals)); - sb.append("Incorrect separator character fails as expected; "); + if (!(hs.containsHeaderString("Accept", ";", "text/html;level=1"::equals))) { + sb.append("Test3: Incorrect separator character fails as expected; "); + } - //Verify white space in parameter not trimmed - assertFalse(hs.containsHeaderString("header3", "**", "value3"::equalsIgnoreCase)); - sb.append("White space not trimmed from parameter as expected; "); + //Verify white space in value not trimmed and double character separator + if (!(hs.containsHeaderString("header3", ";;", "value3"::equals))) { + sb.append("Test4: White space not trimmed from value as expected; "); + } //Verify white space in front and back of value trimmed - assertTrue(hs.containsHeaderString("HEADER3", "**", "value2"::equalsIgnoreCase)); - sb.append("White space trimmed around value as expected; "); + if (hs.containsHeaderString("HEADER3", ";;", "value2"::equalsIgnoreCase)) { + sb.append("Test5: White space trimmed around value as expected; "); + } } catch (Throwable ex) { sb.append("Unexpected exception thrown in containsHeadersGet: " + ex.getMessage());
diff --git a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/headers/JAXRSClientIT.java b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/headers/JAXRSClientIT.java index 1a4c8ce..bccc459 100644 --- a/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/headers/JAXRSClientIT.java +++ b/jaxrs-tck/src/main/java/ee/jakarta/tck/ws/rs/ee/rs/core/headers/JAXRSClientIT.java
@@ -225,8 +225,13 @@ setProperty(Property.REQUEST_HEADERS, "Content-Type:application/xml;charset=utf8"); setProperty(Property.REQUEST_HEADERS, - "Header3:value1 ** value2 **value 3"); + "Header3:value1 ;; Value2 ;;value 3"); setProperty(Property.REQUEST, buildRequest(Request.GET, "contains-headers")); + setProperty(Property.SEARCH_STRING, "Test1"); + setProperty(Property.SEARCH_STRING, "Test2"); + setProperty(Property.SEARCH_STRING, "Test3"); + setProperty(Property.SEARCH_STRING, "Test4"); + setProperty(Property.SEARCH_STRING, "Test5"); invoke(); }