List of usage examples for io.netty.handler.codec.http HttpHeaders size
public abstract int size();
From source file:org.ballerinalang.stdlib.cachingclient.HttpCachingClientTest.java
License:Open Source License
@Test(description = "Tests whether the headers of a cached response are correctly updated by a validation response", enabled = false) public void testReplaceHeaders() { final String cachedDateHeader = "Thu, 01 Mar 2018 15:36:34 GMT"; final String cachedExpiresHeader = "Thu, 01 Mar 2018 15:46:34 GMT"; final String validationDateHeader = "Thu, 01 Mar 2018 15:38:20 GMT"; final String validationExpiresHeader = "Thu, 01 Mar 2018 15:48:20 GMT"; final String validationTestHeader = "ballerina-replace-headers"; final String cacheControlHeader = "no-cache=\"Set-Cookie\",max-age=120"; final String etagHeader = "1sps79e:q0efehi8"; BMap<String, BValue> cachedResponse = BCompileUtil.createAndGetStruct(compileResult.getProgFile(), PROTOCOL_PACKAGE_HTTP, RESPONSE); HttpCarbonMessage cachedResponseMsg = HttpUtil.createHttpCarbonMessage(false); cachedResponseMsg.setProperty(HTTP_STATUS_CODE, 200); cachedResponseMsg.setHeader(DATE, cachedDateHeader); cachedResponseMsg.setHeader(CACHE_CONTROL, cacheControlHeader); cachedResponseMsg.setHeader(EXPIRES, cachedExpiresHeader); cachedResponseMsg.setHeader(ETAG, etagHeader); initInboundResponse(cachedResponse, cachedResponseMsg); BMap<String, BValue> validationResponse = BCompileUtil.createAndGetStruct(compileResult.getProgFile(), PROTOCOL_PACKAGE_HTTP, RESPONSE); HttpCarbonMessage validationResponseMsg = HttpUtil.createHttpCarbonMessage(false); validationResponseMsg.setProperty(HTTP_STATUS_CODE, 304); validationResponseMsg.setHeader(DATE, validationDateHeader); validationResponseMsg.setHeader(CACHE_CONTROL, cacheControlHeader); validationResponseMsg.setHeader(EXPIRES, validationExpiresHeader); validationResponseMsg.setHeader(ETAG, etagHeader); validationResponseMsg.setHeader("test-name", validationTestHeader); initInboundResponse(validationResponse, validationResponseMsg); BValue[] inputArg = { cachedResponse, validationResponse }; BRunUtil.invoke(compileResult, "replaceHeaders", inputArg); HttpHeaders updatedCachedRespHeaders = cachedResponseMsg.getHeaders(); Assert.assertEquals(updatedCachedRespHeaders.size(), 5); Assert.assertEquals(updatedCachedRespHeaders.get(DATE), validationDateHeader); Assert.assertEquals(updatedCachedRespHeaders.get(CACHE_CONTROL), cacheControlHeader); Assert.assertEquals(updatedCachedRespHeaders.get(EXPIRES), validationExpiresHeader); Assert.assertEquals(updatedCachedRespHeaders.get(ETAG), etagHeader); Assert.assertEquals(updatedCachedRespHeaders.get("test-name"), validationTestHeader); }