1717package com.adobe.testing.s3mock.its
1818
1919import com.adobe.testing.s3mock.util.DigestUtil
20- import org.apache.http.HttpHost
2120import org.apache.http.HttpStatus
2221import org.apache.http.client.methods.HttpOptions
2322import org.apache.http.client.methods.HttpPut
2423import org.apache.http.entity.ByteArrayEntity
2524import org.apache.http.impl.client.CloseableHttpClient
26- import org.apache.http.impl.client.HttpClientBuilder
27- import org.apache.http.impl.client.HttpClients
2825import org.apache.http.message.BasicHeader
2926import org.assertj.core.api.Assertions.assertThat
3027import org.junit.jupiter.api.Test
@@ -36,35 +33,28 @@ import java.util.UUID
3633 * Test the application using the AmazonS3 SDK V2.
3734 */
3835internal class CorsV2IT : S3TestBase () {
39- private val httpClient: CloseableHttpClient = HttpClients .createDefault ()
36+ private val httpClient: CloseableHttpClient = createHttpClient ()
4037
4138 @Test
4239 @S3VerifiedFailure(year = 2024 ,
4340 reason = " No credentials sent in plain HTTP request" )
4441 fun testPutObject_cors (testInfo : TestInfo ) {
4542 val bucketName = givenBucketV2(testInfo)
46- val httpclient = HttpClientBuilder .create().build()
47- val optionsRequest = HttpOptions (" /${bucketName} /testObjectName" ).apply {
43+ val optionsRequest = HttpOptions (" $serviceEndpoint /${bucketName} /testObjectName" ).apply {
4844 this .addHeader(" Origin" , " http://localhost/" )
4945 }
50- httpclient.execute(HttpHost (
51- host, httpPort
52- ), optionsRequest).also {
46+ httpClient.execute(optionsRequest).also {
5347 assertThat(it.getFirstHeader(" Allow" ).value).contains(" PUT" )
5448 }
5549
5650 val byteArray = UUID .randomUUID().toString().toByteArray()
5751 val expectedEtag = " \" ${DigestUtil .hexDigest(byteArray)} \" "
58- val putObject = HttpPut (" /$bucketName /testObjectName" ).apply {
52+ val putObject = HttpPut (" $serviceEndpoint /$bucketName /testObjectName" ).apply {
5953 this .entity = ByteArrayEntity (byteArray)
6054 this .addHeader(" Origin" , " http://localhost/" )
6155 }
6256
63- httpClient.execute(
64- HttpHost (
65- host, httpPort
66- ), putObject
67- ).use {
57+ httpClient.execute(putObject).use {
6858 assertThat(it.statusLine.statusCode).isEqualTo(HttpStatus .SC_OK )
6959 assertThat(it.getFirstHeader(" ETag" ).value).isEqualTo(expectedEtag)
7060 assertThat(it.getFirstHeader(" Access-Control-Allow-Origin" ).value).isEqualTo(" *" )
@@ -77,17 +67,13 @@ internal class CorsV2IT : S3TestBase() {
7767 reason = " No credentials sent in plain HTTP request" )
7868 fun testGetBucket_cors (testInfo : TestInfo ) {
7969 val targetBucket = givenBucketV2(testInfo)
80- val httpOptions = HttpOptions (" /$targetBucket " ).apply {
70+ val httpOptions = HttpOptions (" $serviceEndpoint /$targetBucket " ).apply {
8171 this .addHeader(BasicHeader (" Origin" , " http://someurl.com" ))
8272 this .addHeader(BasicHeader (" Access-Control-Request-Method" , " GET" ))
8373 this .addHeader(BasicHeader (" Access-Control-Request-Headers" , " Content-Type, x-requested-with" ))
8474 }
8575
86- httpClient.execute(
87- HttpHost (
88- host, httpPort
89- ), httpOptions
90- ).use {
76+ httpClient.execute(httpOptions).use {
9177 assertThat(it.getFirstHeader(" Access-Control-Allow-Origin" ).value).isEqualTo(" http://someurl.com" )
9278 assertThat(it.getFirstHeader(" Access-Control-Allow-Methods" ).value).isEqualTo(" GET" )
9379 assertThat(it.getFirstHeader(" Access-Control-Allow-Headers" ).value)
0 commit comments