diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/service/HttpHeaderService.java b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/service/HttpHeaderService.java index 0fff37d0a88..277288ba7ae 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/service/HttpHeaderService.java +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/service/HttpHeaderService.java @@ -16,7 +16,7 @@ package smoketest.jetty.service; -import smoketest.jetty.util.RandomStringUtil; +import smoketest.jetty.util.StringUtil; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @@ -28,16 +28,12 @@ public class HttpHeaderService { private int maxHttpResponseHeaderSize; /** - * Generates random data. The data is: - *
    - *
  1. is longer than configured - * server.jetty.max-http-response-header-size
  2. - *
  3. is url encoded by base 64 encode the random value
  4. - *
- * @return a base64 encoded string of random bytes + * Generates a header value, which is longer than + * 'server.jetty.max-http-response-header-size'. + * @return the header value */ public String getHeaderValue() { - return RandomStringUtil.getRandomBase64EncodedString(this.maxHttpResponseHeaderSize + 1); + return StringUtil.repeat('A', this.maxHttpResponseHeaderSize + 1); } } diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/util/RandomStringUtil.java b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/util/StringUtil.java similarity index 66% rename from spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/util/RandomStringUtil.java rename to spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/util/StringUtil.java index eddd0e95106..6ff26e7eb0c 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/util/RandomStringUtil.java +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/main/java/smoketest/jetty/util/StringUtil.java @@ -16,18 +16,17 @@ package smoketest.jetty.util; -import java.util.Base64; -import java.util.Random; +import java.util.Arrays; -public final class RandomStringUtil { +public final class StringUtil { - private RandomStringUtil() { + private StringUtil() { } - public static String getRandomBase64EncodedString(int length) { - byte[] responseHeader = new byte[length]; - new Random().nextBytes(responseHeader); - return Base64.getEncoder().encodeToString(responseHeader); + public static String repeat(char c, int length) { + char[] chars = new char[length]; + Arrays.fill(chars, c); + return new String(chars); } } diff --git a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/test/java/smoketest/jetty/SampleJettyApplicationTests.java b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/test/java/smoketest/jetty/SampleJettyApplicationTests.java index e21fadb0802..d1c970ad570 100644 --- a/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/test/java/smoketest/jetty/SampleJettyApplicationTests.java +++ b/spring-boot-tests/spring-boot-smoke-tests/spring-boot-smoke-test-jetty/src/test/java/smoketest/jetty/SampleJettyApplicationTests.java @@ -21,14 +21,12 @@ import java.nio.charset.StandardCharsets; import java.util.zip.GZIPInputStream; import org.junit.jupiter.api.Test; -import org.junit.jupiter.api.extension.ExtendWith; -import smoketest.jetty.util.RandomStringUtil; +import smoketest.jetty.util.StringUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; -import org.springframework.boot.test.system.OutputCaptureExtension; import org.springframework.boot.test.web.client.TestRestTemplate; import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; @@ -46,9 +44,9 @@ import static org.assertj.core.api.Assertions.assertThat; * @author Andy Wilkinson * @author Florian Storz * @author Michael Weidmann + * @author Moritz Halbritter */ @SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT) -@ExtendWith(OutputCaptureExtension.class) class SampleJettyApplicationTests { @Autowired @@ -85,7 +83,7 @@ class SampleJettyApplicationTests { @Test void testMaxHttpRequestHeaderSize() { - String headerValue = RandomStringUtil.getRandomBase64EncodedString(this.maxHttpRequestHeaderSize + 1); + String headerValue = StringUtil.repeat('A', this.maxHttpRequestHeaderSize + 1); HttpHeaders headers = new HttpHeaders(); headers.add("x-max-request-header", headerValue); HttpEntity httpEntity = new HttpEntity<>(headers);