This is an automated email from the ASF dual-hosted git repository.
exceptionfactory pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/main by this push:
new 4d158745f6 NIFI-14709 Upgraded OkHttp from 4.12.0 to 5.0.0 (#10066)
4d158745f6 is described below
commit 4d158745f68ec469455c7f9f81e3d9cc0957dde3
Author: Pierre Villard <[email protected]>
AuthorDate: Sat Jul 5 17:09:31 2025 +0200
NIFI-14709 Upgraded OkHttp from 4.12.0 to 5.0.0 (#10066)
Signed-off-by: David Handermann <[email protected]>
---
c2/c2-client-bundle/c2-client-http/pom.xml | 2 +-
.../nifi/c2/client/http/C2HttpClientTest.java | 66 +++++----
minifi/minifi-bootstrap/pom.xml | 2 +-
nifi-commons/nifi-web-client/pom.xml | 2 +-
.../web/client/StandardWebClientServiceTest.java | 58 ++++----
.../nifi-airtable-processors/pom.xml | 2 +-
.../airtable/TestQueryAirtableTable.java | 37 +++--
.../nifi-asana-bundle/nifi-asana-services/pom.xml | 2 +-
.../StandardAsanaClientProviderServiceTest.java | 31 +++--
.../nifi-aws-bundle/nifi-aws-processors/pom.xml | 2 +-
.../nifi-box-bundle/nifi-box-processors/pom.xml | 5 +
.../nifi-dropbox-processors/pom.xml | 2 +-
.../nifi-hubspot-processors/pom.xml | 2 +-
.../nifi/processors/hubspot/GetHubSpotTest.java | 66 +++++----
.../nifi-salesforce-processors/pom.xml | 4 +-
.../nifi-shopify-processors/pom.xml | 2 +-
.../nifi/processors/shopify/GetShopifyTest.java | 28 ++--
.../nifi-slack-processors/pom.xml | 6 +-
.../nifi/services/slack/TestSlackRecordSink.java | 39 ++++--
.../nifi-snowflake-processors/pom.xml | 2 +-
.../nifi-twitter-processors/pom.xml | 2 +-
.../processors/twitter/TestConsumeTwitter.java | 18 +--
.../nifi-standard-processors/pom.xml | 2 +-
.../nifi/processors/standard/InvokeHTTPTest.java | 150 +++++++++++++--------
.../nifi-lookup-services/pom.xml | 4 +-
.../apache/nifi/lookup/TestRestLookupService.java | 50 ++++---
.../nifi-oauth2-provider-service/pom.xml | 2 +-
.../nifi-record-sink-service/pom.xml | 2 +-
.../nifi/record/sink/TestHttpRecordSink.java | 17 ++-
.../nifi-web-client-provider-service/pom.xml | 2 +-
.../StandardWebClientServiceProviderTest.java | 33 ++---
.../nifi-workday-processors/pom.xml | 2 +-
.../processors/workday/GetWorkdayReportTest.java | 51 +++++--
.../nifi-zendesk-processors/pom.xml | 2 +-
.../nifi/processors/zendesk/GetZendeskTest.java | 54 +++++---
.../processors/zendesk/PutZendeskTicketTest.java | 60 ++++++---
.../nifi-zendesk-services/pom.xml | 2 +-
.../services/zendesk/ZendeskRecordSinkTest.java | 53 +++++---
.../nifi-web/nifi-web-security/pom.xml | 2 +-
.../StandardRegistrationBuilderProviderTest.java | 23 ++--
pom.xml | 7 +-
41 files changed, 563 insertions(+), 335 deletions(-)
diff --git a/c2/c2-client-bundle/c2-client-http/pom.xml
b/c2/c2-client-bundle/c2-client-http/pom.xml
index 31983303f4..acfbe893ea 100644
--- a/c2/c2-client-bundle/c2-client-http/pom.xml
+++ b/c2/c2-client-bundle/c2-client-http/pom.xml
@@ -71,7 +71,7 @@ limitations under the License.
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
diff --git
a/c2/c2-client-bundle/c2-client-http/src/test/java/org/apache/nifi/c2/client/http/C2HttpClientTest.java
b/c2/c2-client-bundle/c2-client-http/src/test/java/org/apache/nifi/c2/client/http/C2HttpClientTest.java
index 23bf116e8d..28086c3a0a 100644
---
a/c2/c2-client-bundle/c2-client-http/src/test/java/org/apache/nifi/c2/client/http/C2HttpClientTest.java
+++
b/c2/c2-client-bundle/c2-client-http/src/test/java/org/apache/nifi/c2/client/http/C2HttpClientTest.java
@@ -16,21 +16,9 @@
*/
package org.apache.nifi.c2.client.http;
-import static org.junit.jupiter.api.Assertions.assertArrayEquals;
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertFalse;
-import static org.junit.jupiter.api.Assertions.assertThrows;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.lenient;
-import static org.mockito.Mockito.when;
-
-import java.io.IOException;
-import java.nio.charset.StandardCharsets;
-import java.util.Optional;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import org.apache.nifi.c2.client.C2ClientConfig;
import org.apache.nifi.c2.protocol.api.C2Heartbeat;
import org.apache.nifi.c2.protocol.api.C2HeartbeatResponse;
@@ -43,6 +31,19 @@ import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;
+import java.io.IOException;
+import java.nio.charset.StandardCharsets;
+import java.util.Optional;
+
+import static org.junit.jupiter.api.Assertions.assertArrayEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.lenient;
+import static org.mockito.Mockito.when;
+
@ExtendWith(MockitoExtension.class)
public class C2HttpClientTest {
@@ -66,8 +67,9 @@ public class C2HttpClientTest {
private String baseUrl;
@BeforeEach
- public void startServer() {
+ public void startServer() throws IOException {
mockWebServer = new MockWebServer();
+ mockWebServer.start();
baseUrl =
mockWebServer.url("/").newBuilder().host("localhost").build().toString();
when(c2ClientConfig.getKeepAliveDuration()).thenReturn(KEEP_ALIVE_DURATION);
when(c2ClientConfig.getMaxIdleConnections()).thenReturn(MAX_IDLE_CONNECTIONS);
@@ -77,13 +79,15 @@ public class C2HttpClientTest {
@AfterEach
public void shutdownServer() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
void testPublishHeartbeatSuccess() throws InterruptedException {
C2HeartbeatResponse hbResponse = new C2HeartbeatResponse();
- mockWebServer.enqueue(new MockResponse().setBody("responseBody"));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .body("responseBody")
+ .build());
when(serializer.serialize(any(C2Heartbeat.class))).thenReturn(Optional.of("Heartbeat"));
when(serializer.deserialize(any(),
any(Class.class))).thenReturn(Optional.of(hbResponse));
@@ -95,7 +99,7 @@ public class C2HttpClientTest {
assertEquals(response.get(), hbResponse);
RecordedRequest request = mockWebServer.takeRequest();
- assertEquals("/" + HEARTBEAT_PATH, request.getPath());
+ assertEquals("/" + HEARTBEAT_PATH, request.getTarget());
}
@Test
@@ -121,7 +125,10 @@ public class C2HttpClientTest {
@Test
void testRetrieveUpdateContentReturnsEmptyWhenServerErrorResponse() throws
InterruptedException {
- mockWebServer.enqueue(new
MockResponse().setBody("updateContent").setResponseCode(HTTP_STATUS_BAD_REQUEST));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .body("updateContent")
+ .code(HTTP_STATUS_BAD_REQUEST)
+ .build());
C2HttpClient c2HttpClient = C2HttpClient.create(c2ClientConfig,
serializer);
Optional<byte[]> response =
c2HttpClient.retrieveUpdateConfigurationContent(baseUrl + UPDATE_PATH);
@@ -129,13 +136,16 @@ public class C2HttpClientTest {
assertFalse(response.isPresent());
RecordedRequest request = mockWebServer.takeRequest();
- assertEquals("/" + UPDATE_PATH, request.getPath());
+ assertEquals("/" + UPDATE_PATH, request.getTarget());
}
@Test
void testRetrieveUpdateContentReturnsResponseWithBody() throws
InterruptedException {
String content = "updateContent";
- mockWebServer.enqueue(new
MockResponse().setBody(content).setResponseCode(HTTP_STATUS_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .body(content)
+ .code(HTTP_STATUS_OK)
+ .build());
C2HttpClient c2HttpClient = C2HttpClient.create(c2ClientConfig,
serializer);
Optional<byte[]> response =
c2HttpClient.retrieveUpdateConfigurationContent(baseUrl + UPDATE_PATH);
@@ -144,21 +154,23 @@ public class C2HttpClientTest {
assertArrayEquals(content.getBytes(StandardCharsets.UTF_8),
response.get());
RecordedRequest request = mockWebServer.takeRequest();
- assertEquals("/" + UPDATE_PATH, request.getPath());
+ assertEquals("/" + UPDATE_PATH, request.getTarget());
}
@Test
void testAcknowledgeOperation() throws InterruptedException {
String ackContent = "ack";
when(serializer.serialize(any(C2OperationAck.class))).thenReturn(Optional.of(ackContent));
- mockWebServer.enqueue(new
MockResponse().setResponseCode(HTTP_STATUS_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_STATUS_OK)
+ .build());
C2HttpClient c2HttpClient = C2HttpClient.create(c2ClientConfig,
serializer);
c2HttpClient.acknowledgeOperation(new C2OperationAck());
RecordedRequest request = mockWebServer.takeRequest();
- assertEquals("/" + ACK_PATH, request.getPath());
-
assertTrue(request.getHeader("Content-Type").contains("application/json"));
- assertArrayEquals(ackContent.getBytes(StandardCharsets.UTF_8),
request.getBody().readByteArray());
+ assertEquals("/" + ACK_PATH, request.getTarget());
+
assertTrue(request.getHeaders().get("Content-Type").contains("application/json"));
+ assertArrayEquals(ackContent.getBytes(StandardCharsets.UTF_8),
request.getBody().toByteArray());
}
}
diff --git a/minifi/minifi-bootstrap/pom.xml b/minifi/minifi-bootstrap/pom.xml
index b650d19fbb..3916eefb42 100644
--- a/minifi/minifi-bootstrap/pom.xml
+++ b/minifi/minifi-bootstrap/pom.xml
@@ -97,7 +97,7 @@ limitations under the License.
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>okhttp</artifactId>
+ <artifactId>okhttp-jvm</artifactId>
</dependency>
<dependency>
<groupId>commons-io</groupId>
diff --git a/nifi-commons/nifi-web-client/pom.xml
b/nifi-commons/nifi-web-client/pom.xml
index 0f9197f13d..fef4c29be7 100644
--- a/nifi-commons/nifi-web-client/pom.xml
+++ b/nifi-commons/nifi-web-client/pom.xml
@@ -31,7 +31,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
diff --git
a/nifi-commons/nifi-web-client/src/test/java/org/apache/nifi/web/client/StandardWebClientServiceTest.java
b/nifi-commons/nifi-web-client/src/test/java/org/apache/nifi/web/client/StandardWebClientServiceTest.java
index 5be2f36b87..2656ebb13e 100644
---
a/nifi-commons/nifi-web-client/src/test/java/org/apache/nifi/web/client/StandardWebClientServiceTest.java
+++
b/nifi-commons/nifi-web-client/src/test/java/org/apache/nifi/web/client/StandardWebClientServiceTest.java
@@ -16,9 +16,9 @@
*/
package org.apache.nifi.web.client;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import org.apache.nifi.web.client.api.HttpEntityHeaders;
import org.apache.nifi.web.client.api.HttpRequestMethod;
import org.apache.nifi.web.client.api.HttpRequestUriSpec;
@@ -54,6 +54,7 @@ import java.util.Collections;
import java.util.List;
import java.util.Optional;
import java.util.OptionalLong;
+import java.util.concurrent.TimeUnit;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -112,14 +113,16 @@ public class StandardWebClientServiceTest {
StandardWebClientService service;
@BeforeEach
- void setServer() {
+ void setServer() throws IOException {
mockWebServer = new MockWebServer();
+ mockWebServer.start();
+
service = new StandardWebClientService();
}
@AfterEach
void shutdownServer() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
@@ -139,8 +142,13 @@ public class StandardWebClientServiceTest {
}
@Test
- void testHttpTimeoutException() throws IOException {
- mockWebServer.shutdown();
+ void testHttpTimeoutException() {
+ final MockResponse delayedResponse = new MockResponse.Builder()
+ .headersDelay(FAILURE_TIMEOUT.toMillis() * 2,
TimeUnit.MILLISECONDS)
+ .body(RESPONSE_BODY)
+ .code(HttpResponseStatus.OK.getCode())
+ .build();
+ mockWebServer.enqueue(delayedResponse);
service.setConnectTimeout(FAILURE_TIMEOUT);
service.setReadTimeout(FAILURE_TIMEOUT);
@@ -160,7 +168,7 @@ public class StandardWebClientServiceTest {
@Test
void testProxyAuthorization() throws IOException, InterruptedException {
- final Proxy proxy = mockWebServer.toProxyAddress();
+ final Proxy proxy = mockWebServer.getProxyAddress();
when(proxyContext.getProxy()).thenReturn(proxy);
final String username = String.class.getSimpleName();
final String password = String.class.getName();
@@ -168,15 +176,16 @@ public class StandardWebClientServiceTest {
when(proxyContext.getPassword()).thenReturn(Optional.of(password));
service.setProxyContext(proxyContext);
- mockWebServer.enqueue(new MockResponse()
-
.setResponseCode(HttpResponseStatus.PROXY_AUTHENTICATION_REQUIRED.getCode())
- .setHeader(PROXY_AUTHENTICATE_HEADER,
PROXY_AUTHENTICATE_BASIC_REALM)
- );
+ final MockResponse proxyAuthRequiredResponse = new
MockResponse.Builder()
+
.code(HttpResponseStatus.PROXY_AUTHENTICATION_REQUIRED.getCode())
+ .addHeader(PROXY_AUTHENTICATE_HEADER,
PROXY_AUTHENTICATE_BASIC_REALM)
+ .build();
+ mockWebServer.enqueue(proxyAuthRequiredResponse);
runRequestMethod(service.get(), StandardHttpRequestMethod.GET,
HttpResponseStatus.OK);
final RecordedRequest proxyAuthorizationRequest =
mockWebServer.takeRequest();
- final String proxyAuthorization =
proxyAuthorizationRequest.getHeader(PROXY_AUTHORIZATION_HEADER);
+ final String proxyAuthorization =
proxyAuthorizationRequest.getHeaders().get(PROXY_AUTHORIZATION_HEADER);
final String formatted = String.format("%s:%s", username, password);
final String encoded =
Base64.getEncoder().encodeToString(formatted.getBytes(StandardCharsets.UTF_8));
@@ -190,9 +199,10 @@ public class StandardWebClientServiceTest {
final String location =
mockWebServer.url(ROOT_PATH).newBuilder().host(LOCALHOST).build().toString();
- final MockResponse movedResponse = new MockResponse()
-
.setResponseCode(HttpResponseStatus.MOVED_PERMANENTLY.getCode())
- .setHeader(LOCATION_HEADER, location);
+ final MockResponse movedResponse = new MockResponse.Builder()
+ .code(HttpResponseStatus.MOVED_PERMANENTLY.getCode())
+ .addHeader(LOCATION_HEADER, location)
+ .build();
mockWebServer.enqueue(movedResponse);
final HttpResponseStatus httpResponseStatus = HttpResponseStatus.OK;
@@ -360,10 +370,10 @@ public class StandardWebClientServiceTest {
final RecordedRequest recordedRequest =
assertRecordedRequestResponseStatus(httpResponseEntity, httpRequestMethod,
httpResponseStatus);
assertEquals(TEXT_BODY.length, recordedRequest.getBodySize());
- final byte[] requestBody =
recordedRequest.getBody().readByteArray();
+ final byte[] requestBody = recordedRequest.getBody().toByteArray();
assertArrayEquals(TEXT_BODY, requestBody);
- final String acceptHeader =
recordedRequest.getHeader(ACCEPT_HEADER);
+ final String acceptHeader =
recordedRequest.getHeaders().get(ACCEPT_HEADER);
assertEquals(ACCEPT_ANY_TYPE, acceptHeader);
}
}
@@ -433,14 +443,16 @@ public class StandardWebClientServiceTest {
}
private void enqueueResponseStatus(final HttpResponseStatus
httpResponseStatus) {
- mockWebServer.enqueue(new
MockResponse().setResponseCode(httpResponseStatus.getCode()));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(httpResponseStatus.getCode())
+ .build());
}
private void enqueueResponseStatusBody(final HttpResponseStatus
httpResponseStatus) {
- mockWebServer.enqueue(new MockResponse()
- .setResponseCode(httpResponseStatus.getCode())
- .setBody(RESPONSE_BODY)
- );
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(httpResponseStatus.getCode())
+ .body(RESPONSE_BODY)
+ .build());
}
private URI getRootUri() {
diff --git
a/nifi-extension-bundles/nifi-airtable-bundle/nifi-airtable-processors/pom.xml
b/nifi-extension-bundles/nifi-airtable-bundle/nifi-airtable-processors/pom.xml
index b59a1d01af..f62f6d806d 100644
---
a/nifi-extension-bundles/nifi-airtable-bundle/nifi-airtable-processors/pom.xml
+++
b/nifi-extension-bundles/nifi-airtable-bundle/nifi-airtable-processors/pom.xml
@@ -55,7 +55,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-airtable-bundle/nifi-airtable-processors/src/test/java/org/apache/nifi/processors/airtable/TestQueryAirtableTable.java
b/nifi-extension-bundles/nifi-airtable-bundle/nifi-airtable-processors/src/test/java/org/apache/nifi/processors/airtable/TestQueryAirtableTable.java
index 330d7a3161..941f8fb926 100644
---
a/nifi-extension-bundles/nifi-airtable-bundle/nifi-airtable-processors/src/test/java/org/apache/nifi/processors/airtable/TestQueryAirtableTable.java
+++
b/nifi-extension-bundles/nifi-airtable-bundle/nifi-airtable-processors/src/test/java/org/apache/nifi/processors/airtable/TestQueryAirtableTable.java
@@ -17,13 +17,9 @@
package org.apache.nifi.processors.airtable;
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-
-import java.util.List;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
import okhttp3.HttpUrl;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
import org.apache.nifi.processor.Processor;
import org.apache.nifi.util.MockFlowFile;
import org.apache.nifi.util.TestRunner;
@@ -34,6 +30,11 @@ import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import java.util.List;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
public class TestQueryAirtableTable {
public static final String RECORDS_JSON_BODY = "{\"records\":[{"
@@ -75,7 +76,9 @@ public class TestQueryAirtableTable {
@Test
void retrievesAndWritesRecords() throws Exception {
try (final MockWebServer server = new MockWebServer()) {
- server.enqueue(new MockResponse().setBody(RECORDS_JSON_BODY));
+ server.enqueue(new MockResponse.Builder()
+ .body(RECORDS_JSON_BODY)
+ .build());
server.start();
final HttpUrl httpUrl = server.url(API_URL_PATH);
@@ -95,8 +98,12 @@ public class TestQueryAirtableTable {
@Test
void retrievesAndWritesPagedRecords() throws Exception {
try (final MockWebServer server = new MockWebServer()) {
- server.enqueue(new
MockResponse().setBody(RECORDS_WITH_OFFSET_JSON_BODY));
- server.enqueue(new MockResponse().setBody(RECORDS_JSON_BODY));
+ server.enqueue(new MockResponse.Builder()
+ .body(RECORDS_WITH_OFFSET_JSON_BODY)
+ .build());
+ server.enqueue(new MockResponse.Builder()
+ .body(RECORDS_JSON_BODY)
+ .build());
server.start();
final HttpUrl httpUrl = server.url(API_URL_PATH);
@@ -116,8 +123,12 @@ public class TestQueryAirtableTable {
@Test
void retrievesAndWritesPagedRecordsInMultipleFlowFiles() throws Exception {
try (final MockWebServer server = new MockWebServer()) {
- server.enqueue(new
MockResponse().setBody(RECORDS_WITH_OFFSET_JSON_BODY));
- server.enqueue(new MockResponse().setBody(RECORDS_JSON_BODY));
+ server.enqueue(new MockResponse.Builder()
+ .body(RECORDS_WITH_OFFSET_JSON_BODY)
+ .build());
+ server.enqueue(new MockResponse.Builder()
+ .body(RECORDS_JSON_BODY)
+ .build());
server.start();
final HttpUrl httpUrl = server.url(API_URL_PATH);
@@ -143,7 +154,9 @@ public class TestQueryAirtableTable {
@Test
void doesNotWriteEmptyRecords() throws Exception {
try (final MockWebServer server = new MockWebServer()) {
- server.enqueue(new MockResponse().setBody("{\"records\":[]}"));
+ server.enqueue(new MockResponse.Builder()
+ .body("{\"records\":[]}")
+ .build());
server.start();
final HttpUrl httpUrl = server.url(API_URL_PATH);
diff --git
a/nifi-extension-bundles/nifi-asana-bundle/nifi-asana-services/pom.xml
b/nifi-extension-bundles/nifi-asana-bundle/nifi-asana-services/pom.xml
index 02c7cd75f0..6dbc5d1a92 100644
--- a/nifi-extension-bundles/nifi-asana-bundle/nifi-asana-services/pom.xml
+++ b/nifi-extension-bundles/nifi-asana-bundle/nifi-asana-services/pom.xml
@@ -39,7 +39,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-asana-bundle/nifi-asana-services/src/test/java/org/apache/nifi/controller/asana/StandardAsanaClientProviderServiceTest.java
b/nifi-extension-bundles/nifi-asana-bundle/nifi-asana-services/src/test/java/org/apache/nifi/controller/asana/StandardAsanaClientProviderServiceTest.java
index 768f8b8d66..b75df42d24 100644
---
a/nifi-extension-bundles/nifi-asana-bundle/nifi-asana-services/src/test/java/org/apache/nifi/controller/asana/StandardAsanaClientProviderServiceTest.java
+++
b/nifi-extension-bundles/nifi-asana-bundle/nifi-asana-services/src/test/java/org/apache/nifi/controller/asana/StandardAsanaClientProviderServiceTest.java
@@ -17,8 +17,8 @@
package org.apache.nifi.controller.asana;
import com.asana.models.Project;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
import org.apache.nifi.reporting.InitializationException;
import org.apache.nifi.util.NoOpProcessor;
import org.apache.nifi.util.StringUtils;
@@ -87,16 +87,17 @@ public class StandardAsanaClientProviderServiceTest {
private MockWebServer mockWebServer;
@BeforeEach
- public void init() throws InitializationException {
+ public void init() throws InitializationException, IOException {
runner = newTestRunner(NoOpProcessor.class);
service = new StandardAsanaClientProviderService();
runner.addControllerService(AsanaClientProviderService.class.getName(),
service);
mockWebServer = new MockWebServer();
+ mockWebServer.start();
}
@AfterEach
public void shutdownServer() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
@@ -145,8 +146,14 @@ public class StandardAsanaClientProviderServiceTest {
runner.setProperty(service, PROP_ASANA_WORKSPACE_NAME, "My Workspace");
runner.setProperty(service, PROP_ASANA_API_BASE_URL,
getMockWebServerUrl());
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(WORKSPACES));
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(PROJECTS));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(WORKSPACES)
+ .build());
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(PROJECTS)
+ .build());
runner.enableControllerService(service);
final Map<String, Project> projects =
service.createClient().getProjects()
@@ -157,7 +164,7 @@ public class StandardAsanaClientProviderServiceTest {
assertEquals("Another Project Again",
projects.get("1202986168388325").name);
assertEquals(2, mockWebServer.getRequestCount());
- assertEquals("Bearer 12345",
mockWebServer.takeRequest().getHeader("Authorization"));
+ assertEquals("Bearer 12345",
mockWebServer.takeRequest().getHeaders().get("Authorization"));
assertTrue(mockWebServer.takeRequest().getRequestLine().contains("workspace=1202898619267352"));
}
@@ -167,8 +174,14 @@ public class StandardAsanaClientProviderServiceTest {
runner.setProperty(service, PROP_ASANA_WORKSPACE_NAME, "Company or
Team Name");
runner.setProperty(service, PROP_ASANA_API_BASE_URL,
getMockWebServerUrl());
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(WORKSPACES));
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(PROJECTS));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(WORKSPACES)
+ .build());
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(PROJECTS)
+ .build());
runner.enableControllerService(service);
assertThrows(RuntimeException.class, service::createClient);
diff --git a/nifi-extension-bundles/nifi-aws-bundle/nifi-aws-processors/pom.xml
b/nifi-extension-bundles/nifi-aws-bundle/nifi-aws-processors/pom.xml
index 17086900f9..2823ecf270 100644
--- a/nifi-extension-bundles/nifi-aws-bundle/nifi-aws-processors/pom.xml
+++ b/nifi-extension-bundles/nifi-aws-bundle/nifi-aws-processors/pom.xml
@@ -151,7 +151,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git a/nifi-extension-bundles/nifi-box-bundle/nifi-box-processors/pom.xml
b/nifi-extension-bundles/nifi-box-bundle/nifi-box-processors/pom.xml
index 109798ec4f..be323ebac4 100644
--- a/nifi-extension-bundles/nifi-box-bundle/nifi-box-processors/pom.xml
+++ b/nifi-extension-bundles/nifi-box-bundle/nifi-box-processors/pom.xml
@@ -69,5 +69,10 @@
<artifactId>nifi-mock-record-utils</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>com.squareup.okhttp3</groupId>
+ <artifactId>okhttp-jvm</artifactId>
+ <scope>test</scope>
+ </dependency>
</dependencies>
</project>
diff --git
a/nifi-extension-bundles/nifi-dropbox-bundle/nifi-dropbox-processors/pom.xml
b/nifi-extension-bundles/nifi-dropbox-bundle/nifi-dropbox-processors/pom.xml
index ae3987aa72..b1fc258689 100644
--- a/nifi-extension-bundles/nifi-dropbox-bundle/nifi-dropbox-processors/pom.xml
+++ b/nifi-extension-bundles/nifi-dropbox-bundle/nifi-dropbox-processors/pom.xml
@@ -52,7 +52,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>okhttp</artifactId>
+ <artifactId>okhttp-jvm</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
diff --git
a/nifi-extension-bundles/nifi-hubspot-bundle/nifi-hubspot-processors/pom.xml
b/nifi-extension-bundles/nifi-hubspot-bundle/nifi-hubspot-processors/pom.xml
index 49c2e614d9..255c8a5223 100644
--- a/nifi-extension-bundles/nifi-hubspot-bundle/nifi-hubspot-processors/pom.xml
+++ b/nifi-extension-bundles/nifi-hubspot-bundle/nifi-hubspot-processors/pom.xml
@@ -59,7 +59,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
diff --git
a/nifi-extension-bundles/nifi-hubspot-bundle/nifi-hubspot-processors/src/test/java/org/apache/nifi/processors/hubspot/GetHubSpotTest.java
b/nifi-extension-bundles/nifi-hubspot-bundle/nifi-hubspot-processors/src/test/java/org/apache/nifi/processors/hubspot/GetHubSpotTest.java
index c5d2302599..ecf742bba9 100644
---
a/nifi-extension-bundles/nifi-hubspot-bundle/nifi-hubspot-processors/src/test/java/org/apache/nifi/processors/hubspot/GetHubSpotTest.java
+++
b/nifi-extension-bundles/nifi-hubspot-bundle/nifi-hubspot-processors/src/test/java/org/apache/nifi/processors/hubspot/GetHubSpotTest.java
@@ -16,30 +16,13 @@
*/
package org.apache.nifi.processors.hubspot;
-import static org.apache.nifi.processors.hubspot.GetHubSpot.CURSOR_KEY;
-import static
org.apache.nifi.processors.hubspot.GetHubSpot.END_INCREMENTAL_KEY;
-import static
org.apache.nifi.processors.hubspot.GetHubSpot.START_INCREMENTAL_KEY;
-import static org.apache.nifi.processors.hubspot.HubSpotObjectType.COMPANIES;
-import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertThrows;
-import static org.junit.jupiter.api.Assertions.assertTrue;
-
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ArrayNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
-import java.io.IOException;
-import java.net.URI;
-import java.nio.charset.StandardCharsets;
-import java.time.Instant;
-import java.time.temporal.ChronoUnit;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
import okhttp3.HttpUrl;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
import org.apache.commons.io.IOUtils;
import org.apache.nifi.components.PropertyDescriptor;
import org.apache.nifi.components.state.Scope;
@@ -56,6 +39,24 @@ import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
+import java.io.IOException;
+import java.net.URI;
+import java.nio.charset.StandardCharsets;
+import java.time.Instant;
+import java.time.temporal.ChronoUnit;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+
+import static org.apache.nifi.processors.hubspot.GetHubSpot.CURSOR_KEY;
+import static
org.apache.nifi.processors.hubspot.GetHubSpot.END_INCREMENTAL_KEY;
+import static
org.apache.nifi.processors.hubspot.GetHubSpot.START_INCREMENTAL_KEY;
+import static org.apache.nifi.processors.hubspot.HubSpotObjectType.COMPANIES;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
+
class GetHubSpotTest {
private static final long TEST_EPOCH_TIME = 1662665787;
@@ -87,7 +88,7 @@ class GetHubSpotTest {
@AfterEach
void tearDown() throws IOException {
if (server != null) {
- server.shutdown();
+ server.close();
server = null;
}
}
@@ -96,7 +97,9 @@ class GetHubSpotTest {
void testFlowFileContainsResultsArray() throws IOException {
final String response = getResourceAsString("simple_response.json");
- server.enqueue(new MockResponse().setBody(response));
+ server.enqueue(new MockResponse.Builder()
+ .body(response)
+ .build());
runner.run(1);
@@ -118,7 +121,9 @@ class GetHubSpotTest {
void testFlowFileNotCreatedWhenZeroResult() throws IOException {
final String response = getResourceAsString("zero_result.json");
- server.enqueue(new MockResponse().setBody(response));
+ server.enqueue(new MockResponse.Builder()
+ .body(response)
+ .build());
runner.run(1);
@@ -132,7 +137,10 @@ class GetHubSpotTest {
void testExceptionIsThrownWhenTooManyRequest() throws IOException {
final String response = getResourceAsString("zero_result.json");
- server.enqueue(new
MockResponse().setBody(response).setResponseCode(429));
+ server.enqueue(new MockResponse.Builder()
+ .code(429)
+ .body(response)
+ .build());
assertThrows(AssertionError.class, () -> runner.run(1));
assertTrue(runner.getProvenanceEvents().isEmpty());
@@ -141,7 +149,9 @@ class GetHubSpotTest {
@Test
void testSimpleIncrementalLoadingFilter() throws IOException,
InterruptedException {
final String response = getResourceAsString("simple_response.json");
- server.enqueue(new MockResponse().setBody(response));
+ server.enqueue(new MockResponse.Builder()
+ .body(response)
+ .build());
final String limit = "2";
final int defaultDelay = 30000;
@@ -155,7 +165,7 @@ class GetHubSpotTest {
runner.run(1);
- final String requestBodyString = new
String(server.takeRequest().getBody().readByteArray());
+ final String requestBodyString = new
String(server.takeRequest().getBody().toByteArray());
final ObjectNode startTimeNode = OBJECT_MAPPER.createObjectNode();
startTimeNode.put("propertyName", "hs_lastmodifieddate");
@@ -185,7 +195,9 @@ class GetHubSpotTest {
@Test
void testIncrementalLoadingFilterWithPagingCursor() throws IOException,
InterruptedException {
final String response = getResourceAsString("simple_response.json");
- server.enqueue(new MockResponse().setBody(response));
+ server.enqueue(new MockResponse.Builder()
+ .body(response)
+ .build());
final String limit = "2";
final String after = "nextPage";
@@ -203,7 +215,7 @@ class GetHubSpotTest {
runner.run(1);
- final String requestBodyString = new
String(server.takeRequest().getBody().readByteArray());
+ final String requestBodyString = new
String(server.takeRequest().getBody().toByteArray());
final ObjectNode startTimeNode = OBJECT_MAPPER.createObjectNode();
startTimeNode.put("propertyName", "hs_lastmodifieddate");
diff --git
a/nifi-extension-bundles/nifi-salesforce-bundle/nifi-salesforce-processors/pom.xml
b/nifi-extension-bundles/nifi-salesforce-bundle/nifi-salesforce-processors/pom.xml
index 8b194fc2c1..a471e48861 100644
---
a/nifi-extension-bundles/nifi-salesforce-bundle/nifi-salesforce-processors/pom.xml
+++
b/nifi-extension-bundles/nifi-salesforce-bundle/nifi-salesforce-processors/pom.xml
@@ -28,7 +28,7 @@
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>okhttp</artifactId>
+ <artifactId>okhttp-jvm</artifactId>
</dependency>
<dependency>
<groupId>org.apache.nifi</groupId>
@@ -80,7 +80,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
diff --git
a/nifi-extension-bundles/nifi-shopify-bundle/nifi-shopify-processors/pom.xml
b/nifi-extension-bundles/nifi-shopify-bundle/nifi-shopify-processors/pom.xml
index 39af02640d..39190e98db 100644
--- a/nifi-extension-bundles/nifi-shopify-bundle/nifi-shopify-processors/pom.xml
+++ b/nifi-extension-bundles/nifi-shopify-bundle/nifi-shopify-processors/pom.xml
@@ -50,7 +50,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-shopify-bundle/nifi-shopify-processors/src/test/java/org/apache/nifi/processors/shopify/GetShopifyTest.java
b/nifi-extension-bundles/nifi-shopify-bundle/nifi-shopify-processors/src/test/java/org/apache/nifi/processors/shopify/GetShopifyTest.java
index a6f526fe82..940f206abf 100644
---
a/nifi-extension-bundles/nifi-shopify-bundle/nifi-shopify-processors/src/test/java/org/apache/nifi/processors/shopify/GetShopifyTest.java
+++
b/nifi-extension-bundles/nifi-shopify-bundle/nifi-shopify-processors/src/test/java/org/apache/nifi/processors/shopify/GetShopifyTest.java
@@ -16,9 +16,9 @@
*/
package org.apache.nifi.processors.shopify;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
import okhttp3.HttpUrl;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
import org.apache.commons.io.IOUtils;
import org.apache.nifi.flowfile.attributes.CoreAttributes;
import org.apache.nifi.processors.shopify.model.IncrementalLoadingParameter;
@@ -65,7 +65,7 @@ class GetShopifyTest {
@AfterEach
void tearDown() throws IOException {
if (server != null) {
- server.shutdown();
+ server.close();
server = null;
}
}
@@ -73,9 +73,10 @@ class GetShopifyTest {
@Test
void testStateIsUpdatedIfIncrementalAndNotPaging() throws
InitializationException, IOException {
- final MockResponse mockResponse = new MockResponse()
- .setResponseCode(200)
- .setBody(getResourceAsString("simple_response.json"));
+ final MockResponse mockResponse = new MockResponse.Builder()
+ .code(200)
+ .body(getResourceAsString("simple_response.json"))
+ .build();
server.enqueue(mockResponse);
@@ -107,7 +108,9 @@ class GetShopifyTest {
@Test
void testHttpError429() throws InitializationException {
- server.enqueue(new MockResponse().setResponseCode(429));
+ server.enqueue(new MockResponse.Builder()
+ .code(429)
+ .build());
final StandardWebClientServiceProvider
standardWebClientServiceProvider =
new StandardWebClientServiceProvider();
@@ -131,7 +134,9 @@ class GetShopifyTest {
@Test
void testHttpError404() throws InitializationException {
- server.enqueue(new MockResponse().setResponseCode(404));
+ server.enqueue(new MockResponse.Builder()
+ .code(404)
+ .build());
final StandardWebClientServiceProvider
standardWebClientServiceProvider =
new StandardWebClientServiceProvider();
@@ -156,9 +161,10 @@ class GetShopifyTest {
@Test
void testNonEmptyJsonResponseSentToSuccess() throws
InitializationException, IOException {
- final MockResponse mockResponse = new MockResponse()
- .setResponseCode(200)
- .setBody(getResourceAsString("collection_listings.json"));
+ final MockResponse mockResponse = new MockResponse.Builder()
+ .code(200)
+ .body(getResourceAsString("collection_listings.json"))
+ .build();
server.enqueue(mockResponse);
final StandardWebClientServiceProvider
standardWebClientServiceProvider =
diff --git
a/nifi-extension-bundles/nifi-slack-bundle/nifi-slack-processors/pom.xml
b/nifi-extension-bundles/nifi-slack-bundle/nifi-slack-processors/pom.xml
index 705f43f585..d783ed3299 100644
--- a/nifi-extension-bundles/nifi-slack-bundle/nifi-slack-processors/pom.xml
+++ b/nifi-extension-bundles/nifi-slack-bundle/nifi-slack-processors/pom.xml
@@ -45,7 +45,11 @@
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>okhttp-jvm</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.squareup.okhttp3</groupId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-slack-bundle/nifi-slack-processors/src/test/java/org/apache/nifi/services/slack/TestSlackRecordSink.java
b/nifi-extension-bundles/nifi-slack-bundle/nifi-slack-processors/src/test/java/org/apache/nifi/services/slack/TestSlackRecordSink.java
index 8ab2896d7b..90057e246f 100644
---
a/nifi-extension-bundles/nifi-slack-bundle/nifi-slack-processors/src/test/java/org/apache/nifi/services/slack/TestSlackRecordSink.java
+++
b/nifi-extension-bundles/nifi-slack-bundle/nifi-slack-processors/src/test/java/org/apache/nifi/services/slack/TestSlackRecordSink.java
@@ -18,9 +18,9 @@ package org.apache.nifi.services.slack;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import org.apache.nifi.reporting.InitializationException;
import org.apache.nifi.serialization.SimpleRecordSchema;
import org.apache.nifi.serialization.WriteResult;
@@ -119,7 +119,7 @@ public class TestSlackRecordSink {
@AfterEach
public void cleanUp() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
@@ -128,7 +128,10 @@ public class TestSlackRecordSink {
testRunner.assertValid(slackRecordSink);
testRunner.enableControllerService(slackRecordSink);
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(RESPONSE_SUCCESS_TEXT_MSG_WITH_TIMESTAMP));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(RESPONSE_SUCCESS_TEXT_MSG_WITH_TIMESTAMP)
+ .build());
final WriteResult writeResult = slackRecordSink.sendData(recordSet,
Collections.emptyMap(), false);
@@ -162,7 +165,9 @@ public class TestSlackRecordSink {
testRunner.assertValid(slackRecordSink);
testRunner.enableControllerService(slackRecordSink);
- mockWebServer.enqueue(new MockResponse().setResponseCode(500));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(500)
+ .build());
final IOException e = assertThrows(IOException.class, () ->
slackRecordSink.sendData(recordSet, Collections.emptyMap(), false));
assertTrue(e.getCause().getMessage().contains("500"));
@@ -174,7 +179,10 @@ public class TestSlackRecordSink {
testRunner.assertValid(slackRecordSink);
testRunner.enableControllerService(slackRecordSink);
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(RESPONSE_ERROR));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(RESPONSE_ERROR)
+ .build());
final IOException e = assertThrows(IOException.class, () ->
slackRecordSink.sendData(recordSet, Collections.emptyMap(), false));
assertTrue(e.getCause().getMessage().contains("slack-error"));
@@ -186,7 +194,10 @@ public class TestSlackRecordSink {
testRunner.assertValid(slackRecordSink);
testRunner.enableControllerService(slackRecordSink);
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(RESPONSE_WARNING));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(RESPONSE_WARNING)
+ .build());
assertDoesNotThrow(() -> {
slackRecordSink.sendData(recordSet, Collections.emptyMap(), false);
@@ -199,7 +210,10 @@ public class TestSlackRecordSink {
testRunner.assertValid(slackRecordSink);
testRunner.enableControllerService(slackRecordSink);
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(RESPONSE_EMPTY_JSON));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(RESPONSE_EMPTY_JSON)
+ .build());
final IOException e = assertThrows(IOException.class, () ->
slackRecordSink.sendData(recordSet, Collections.emptyMap(), false));
assertTrue(e.getCause().getMessage().contains("null"));
@@ -211,7 +225,10 @@ public class TestSlackRecordSink {
testRunner.assertValid(slackRecordSink);
testRunner.enableControllerService(slackRecordSink);
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(RESPONSE_INVALID_JSON));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(RESPONSE_INVALID_JSON)
+ .build());
final IOException e = assertThrows(IOException.class, () ->
slackRecordSink.sendData(recordSet, Collections.emptyMap(), false));
assertTrue(e.getCause().getMessage().contains("parsing"));
@@ -220,7 +237,7 @@ public class TestSlackRecordSink {
private JsonNode getRequestBodyJson() {
try {
final RecordedRequest recordedRequest =
mockWebServer.takeRequest();
- return mapper.readTree(recordedRequest.getBody().inputStream());
+ return mapper.readTree(recordedRequest.getBody().toByteArray());
} catch (final Exception e) {
throw new RuntimeException(e);
}
diff --git
a/nifi-extension-bundles/nifi-snowflake-bundle/nifi-snowflake-processors/pom.xml
b/nifi-extension-bundles/nifi-snowflake-bundle/nifi-snowflake-processors/pom.xml
index 52dc6408b2..0ae3cd5010 100644
---
a/nifi-extension-bundles/nifi-snowflake-bundle/nifi-snowflake-processors/pom.xml
+++
b/nifi-extension-bundles/nifi-snowflake-bundle/nifi-snowflake-processors/pom.xml
@@ -56,7 +56,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-social-media-bundle/nifi-twitter-processors/pom.xml
b/nifi-extension-bundles/nifi-social-media-bundle/nifi-twitter-processors/pom.xml
index 068b1ed3d9..05c4ebabc2 100644
---
a/nifi-extension-bundles/nifi-social-media-bundle/nifi-twitter-processors/pom.xml
+++
b/nifi-extension-bundles/nifi-social-media-bundle/nifi-twitter-processors/pom.xml
@@ -48,7 +48,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
diff --git
a/nifi-extension-bundles/nifi-social-media-bundle/nifi-twitter-processors/src/test/java/org/apache/nifi/processors/twitter/TestConsumeTwitter.java
b/nifi-extension-bundles/nifi-social-media-bundle/nifi-twitter-processors/src/test/java/org/apache/nifi/processors/twitter/TestConsumeTwitter.java
index 10d0383e3f..5d177b283d 100644
---
a/nifi-extension-bundles/nifi-social-media-bundle/nifi-twitter-processors/src/test/java/org/apache/nifi/processors/twitter/TestConsumeTwitter.java
+++
b/nifi-extension-bundles/nifi-social-media-bundle/nifi-twitter-processors/src/test/java/org/apache/nifi/processors/twitter/TestConsumeTwitter.java
@@ -16,8 +16,8 @@
*/
package org.apache.nifi.processors.twitter;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
import org.apache.nifi.flowfile.attributes.CoreAttributes;
import org.apache.nifi.util.MockFlowFile;
import org.apache.nifi.util.TestRunner;
@@ -35,8 +35,9 @@ public class TestConsumeTwitter {
private TestRunner runner;
@BeforeEach
- public void setRunnerAndAPI() {
+ public void setRunnerAndAPI() throws IOException {
mockWebServer = new MockWebServer();
+ mockWebServer.start();
runner = TestRunners.newTestRunner(ConsumeTwitter.class);
@@ -47,17 +48,18 @@ public class TestConsumeTwitter {
@AfterEach
public void shutdownServerAndAPI() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
@Timeout(60)
public void testReceiveSingleTweetInStream() {
String sampleTweet = "{\"data\":{\"id\":\"123\",\"text\":\"This is a
sample tweet and is not real!\"}}";
- MockResponse response = new MockResponse()
- .setResponseCode(200)
- .setBody(sampleTweet)
- .addHeader("Content-Type", "application/json");
+ MockResponse response = new MockResponse.Builder()
+ .code(200)
+ .body(sampleTweet)
+ .addHeader("Content-Type", "application/json")
+ .build();
mockWebServer.enqueue(response);
diff --git
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/pom.xml
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/pom.xml
index 486576c605..49cde8b812 100644
---
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/pom.xml
+++
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/pom.xml
@@ -554,7 +554,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/InvokeHTTPTest.java
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/InvokeHTTPTest.java
index 2c1015e325..c7b06094e1 100644
---
a/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/InvokeHTTPTest.java
+++
b/nifi-extension-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/InvokeHTTPTest.java
@@ -16,10 +16,9 @@
*/
package org.apache.nifi.processors.standard;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
-import okio.Buffer;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
@@ -62,6 +61,7 @@ import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.X509ExtendedTrustManager;
import javax.security.auth.x500.X500Principal;
+import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.net.Proxy;
import java.net.URI;
@@ -196,8 +196,10 @@ public class InvokeHTTPTest {
}
@BeforeEach
- public void setRunner() {
+ public void setRunner() throws IOException {
mockWebServer = new MockWebServer();
+ mockWebServer.start();
+
runner = TestRunners.newTestRunner(new InvokeHTTP());
// Disable Connection Pooling
runner.setProperty(InvokeHTTP.SOCKET_IDLE_CONNECTIONS,
Integer.toString(0));
@@ -205,7 +207,7 @@ public class InvokeHTTPTest {
@AfterEach
public void shutdownServer() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
@@ -327,7 +329,10 @@ public class InvokeHTTPTest {
setUrlProperty();
final String body = String.class.getName();
- mockWebServer.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(body));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(body)
+ .build());
runner.enqueue(FLOW_FILE_CONTENT);
runner.run();
@@ -346,7 +351,10 @@ public class InvokeHTTPTest {
runner.setNonLoopConnection(false);
final String body = String.class.getName();
- mockWebServer.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(body));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(body)
+ .build());
runner.run();
assertRelationshipStatusCodeEquals(InvokeHTTP.ORIGINAL, HTTP_OK);
@@ -361,7 +369,9 @@ public class InvokeHTTPTest {
runner.setNonLoopConnection(false);
setUrlProperty();
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
runner.run();
assertRelationshipStatusCodeEquals(InvokeHTTP.RESPONSE, HTTP_OK);
@@ -388,7 +398,9 @@ public class InvokeHTTPTest {
runner.setProperty(InvokeHTTP.HTTP_URL, mockWebServerUrl);
runner.setProperty(ProxyConfigurationService.PROXY_CONFIGURATION_SERVICE,
proxyConfigurationServiceId);
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
runner.enqueue(FLOW_FILE_CONTENT);
runner.run();
@@ -402,7 +414,10 @@ public class InvokeHTTPTest {
@Test
public void testRunGetHttp200SuccessContentTypeHeaderMimeType() {
- final MockResponse response = new
MockResponse().setResponseCode(HTTP_OK).setHeader(CONTENT_TYPE_HEADER,
TEXT_PLAIN);
+ final MockResponse response = new MockResponse.Builder()
+ .code(HTTP_OK)
+ .addHeader(CONTENT_TYPE_HEADER, TEXT_PLAIN)
+ .build();
mockWebServer.enqueue(response);
setUrlProperty();
@@ -426,7 +441,7 @@ public class InvokeHTTPTest {
assertRelationshipStatusCodeEquals(InvokeHTTP.RESPONSE, HTTP_OK);
final RecordedRequest request = takeRequestCompleted();
- final String dateHeader = request.getHeader(DATE_HEADER);
+ final String dateHeader = request.getHeaders().get(DATE_HEADER);
assertNotNull(dateHeader, "Request Date not found");
final Pattern rfcDatePattern = Pattern.compile("^.+? \\d{4}
\\d{2}:\\d{2}:\\d{2} GMT$");
@@ -442,7 +457,9 @@ public class InvokeHTTPTest {
final String defaultContentTypeHeader = "Default-Content-Type";
runner.setProperty(defaultContentTypeHeader,
InvokeHTTP.DEFAULT_CONTENT_TYPE);
setUrlProperty();
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
final Map<String, String> attributes = new HashMap<>();
attributes.put(ACCEPT_HEADER, TEXT_PLAIN);
@@ -453,21 +470,23 @@ public class InvokeHTTPTest {
assertRelationshipStatusCodeEquals(InvokeHTTP.RESPONSE, HTTP_OK);
final RecordedRequest request = takeRequestCompleted();
- final String acceptHeader = request.getHeader(ACCEPT_HEADER);
+ final String acceptHeader = request.getHeaders().get(ACCEPT_HEADER);
assertEquals(TEXT_PLAIN, acceptHeader);
- final String contentType = request.getHeader(defaultContentTypeHeader);
+ final String contentType =
request.getHeaders().get(defaultContentTypeHeader);
assertEquals(InvokeHTTP.DEFAULT_CONTENT_TYPE, contentType);
runner.removeProperty(InvokeHTTP.REQUEST_HEADER_ATTRIBUTES_PATTERN);
runner.removeProperty(defaultContentTypeHeader);
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
runner.enqueue(FLOW_FILE_CONTENT, attributes);
runner.run();
final RecordedRequest secondRequest = takeRequestCompleted();
- assertNull(secondRequest.getHeader(ACCEPT_HEADER), "Accept Header
found");
- assertNull(secondRequest.getHeader(defaultContentTypeHeader),
"Default-Content-Type Header found");
+ assertNull(secondRequest.getHeaders().get(ACCEPT_HEADER), "Accept
Header found");
+ assertNull(secondRequest.getHeaders().get(defaultContentTypeHeader),
"Default-Content-Type Header found");
}
@Test
@@ -479,10 +498,11 @@ public class InvokeHTTPTest {
final String firstHeader = String.class.getSimpleName();
final String secondHeader = Integer.class.getSimpleName();
- final MockResponse response = new MockResponse()
- .setResponseCode(HTTP_OK)
+ final MockResponse response = new MockResponse.Builder()
+ .code(HTTP_OK)
.addHeader(REPEATED_HEADER, firstHeader)
- .addHeader(REPEATED_HEADER, secondHeader);
+ .addHeader(REPEATED_HEADER, secondHeader)
+ .build();
mockWebServer.enqueue(response);
runner.enqueue(FLOW_FILE_CONTENT);
@@ -525,7 +545,7 @@ public class InvokeHTTPTest {
assertRelationshipStatusCodeEquals(InvokeHTTP.RESPONSE, HTTP_OK);
final RecordedRequest request = takeRequestCompleted();
- final String authorization = request.getHeader(AUTHORIZATION_HEADER);
+ final String authorization =
request.getHeaders().get(AUTHORIZATION_HEADER);
assertNotNull(authorization, "Authorization Header not found");
final Pattern basicAuthPattern = Pattern.compile("^Basic \\S+$");
@@ -542,17 +562,20 @@ public class InvokeHTTPTest {
final String nonce = UUID.randomUUID().toString();
final String digestHeader = String.format("Digest realm=\"%s\",
nonce=\"%s\"", realm, nonce);
- mockWebServer.enqueue(new
MockResponse().setResponseCode(HTTP_UNAUTHORIZED).setHeader(AUTHENTICATE_HEADER,
digestHeader));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_UNAUTHORIZED)
+ .addHeader(AUTHENTICATE_HEADER, digestHeader)
+ .build());
enqueueResponseCodeAndRun(HTTP_OK);
assertResponseSuccessRelationships();
assertRelationshipStatusCodeEquals(InvokeHTTP.RESPONSE, HTTP_OK);
final RecordedRequest request = takeRequestCompleted();
- assertNull(request.getHeader(AUTHORIZATION_HEADER), "Authorization
Header found");
+ assertNull(request.getHeaders().get(AUTHORIZATION_HEADER),
"Authorization Header found");
final RecordedRequest authenticatedRequest = takeRequestCompleted();
- final String authorization =
authenticatedRequest.getHeader(AUTHORIZATION_HEADER);
+ final String authorization =
authenticatedRequest.getHeaders().get(AUTHORIZATION_HEADER);
assertNotNull(authorization, "Authorization Header not found");
assertTrue(authorization.contains(realm), "Digest Realm not found");
assertTrue(authorization.contains(nonce), "Digest Nonce not found");
@@ -595,7 +618,7 @@ public class InvokeHTTPTest {
assertRelationshipStatusCodeEquals(InvokeHTTP.RESPONSE, HTTP_OK);
final RecordedRequest request = takeRequestCompleted();
- final String userAgentHeader = request.getHeader(USER_AGENT_HEADER);
+ final String userAgentHeader =
request.getHeaders().get(USER_AGENT_HEADER);
assertEquals(userAgent, userAgentHeader);
}
@@ -606,7 +629,9 @@ public class InvokeHTTPTest {
final String encodedUrl =
URLValidator.createURL(nonEncodedUrl).toExternalForm();
runner.setProperty(InvokeHTTP.HTTP_URL, nonEncodedUrl);
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
runner.enqueue(FLOW_FILE_CONTENT);
runner.run();
@@ -630,7 +655,10 @@ public class InvokeHTTPTest {
@Test
public void testRunGetHttp302NoRetryResponseRedirectsDefaultEnabled() {
- mockWebServer.enqueue(new
MockResponse().setResponseCode(HTTP_MOVED_TEMP).setHeader(LOCATION_HEADER,
getMockWebServerUrl()));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_MOVED_TEMP)
+ .addHeader(LOCATION_HEADER, getMockWebServerUrl())
+ .build());
enqueueResponseCodeAndRun(HTTP_OK);
runner.assertTransferCount(InvokeHTTP.FAILURE, 0);
@@ -651,18 +679,20 @@ public class InvokeHTTPTest {
@Test
public void testRunGetHttp302CookieStrategyAcceptAll() throws
InterruptedException {
runner.setProperty(InvokeHTTP.RESPONSE_COOKIE_STRATEGY,
CookieStrategy.ACCEPT_ALL.name());
- mockWebServer.enqueue(new
MockResponse().setResponseCode(HTTP_MOVED_TEMP)
- .addHeader(SET_COOKIE_HEADER, COOKIE_1)
- .addHeader(SET_COOKIE_HEADER, COOKIE_2)
- .addHeader(LOCATION_HEADER, getMockWebServerUrl()));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_MOVED_TEMP)
+ .addHeader(SET_COOKIE_HEADER, COOKIE_1)
+ .addHeader(SET_COOKIE_HEADER, COOKIE_2)
+ .addHeader(LOCATION_HEADER, getMockWebServerUrl())
+ .build());
enqueueResponseCodeAndRun(HTTP_OK);
RecordedRequest request1 = mockWebServer.takeRequest();
- assertNull(request1.getHeader(COOKIE_HEADER));
+ assertNull(request1.getHeaders().get(COOKIE_HEADER));
RecordedRequest request2 = mockWebServer.takeRequest();
final String expectedHeader = String.format("%s; %s", COOKIE_1,
COOKIE_2);
- assertEquals(expectedHeader, request2.getHeader(COOKIE_HEADER));
+ assertEquals(expectedHeader, request2.getHeaders().get(COOKIE_HEADER));
runner.assertTransferCount(InvokeHTTP.FAILURE, 0);
runner.assertTransferCount(InvokeHTTP.NO_RETRY, 0);
@@ -671,17 +701,19 @@ public class InvokeHTTPTest {
@Test
public void testRunGetHttp302CookieStrategyDefaultDisabled() throws
InterruptedException {
- mockWebServer.enqueue(new
MockResponse().setResponseCode(HTTP_MOVED_TEMP)
- .addHeader(SET_COOKIE_HEADER, COOKIE_1)
- .addHeader(SET_COOKIE_HEADER, COOKIE_2)
- .addHeader(LOCATION_HEADER, getMockWebServerUrl()));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_MOVED_TEMP)
+ .addHeader(SET_COOKIE_HEADER, COOKIE_1)
+ .addHeader(SET_COOKIE_HEADER, COOKIE_2)
+ .addHeader(LOCATION_HEADER, getMockWebServerUrl())
+ .build());
enqueueResponseCodeAndRun(HTTP_OK);
RecordedRequest request1 = mockWebServer.takeRequest();
- assertNull(request1.getHeader(COOKIE_HEADER));
+ assertNull(request1.getHeaders().get(COOKIE_HEADER));
RecordedRequest request2 = mockWebServer.takeRequest();
- assertNull(request2.getHeader(COOKIE_HEADER));
+ assertNull(request2.getHeaders().get(COOKIE_HEADER));
runner.assertTransferCount(InvokeHTTP.FAILURE, 0);
runner.assertTransferCount(InvokeHTTP.NO_RETRY, 0);
@@ -771,14 +803,14 @@ public class InvokeHTTPTest {
assertRelationshipStatusCodeEquals(InvokeHTTP.RESPONSE, HTTP_OK);
final RecordedRequest request = takeRequestCompleted();
- final String contentLength = request.getHeader(CONTENT_LENGTH_HEADER);
+ final String contentLength =
request.getHeaders().get(CONTENT_LENGTH_HEADER);
assertNull(contentLength, "Content-Length Request Header found");
- final String contentEncoding =
request.getHeader(CONTENT_ENCODING_HEADER);
+ final String contentEncoding =
request.getHeaders().get(CONTENT_ENCODING_HEADER);
assertEquals(ContentEncodingStrategy.GZIP.getValue().toLowerCase(),
contentEncoding);
- final Buffer body = request.getBody();
- try (final GZIPInputStream gzipInputStream = new
GZIPInputStream(body.inputStream())) {
+ final byte[] body = request.getBody().toByteArray();
+ try (final GZIPInputStream gzipInputStream = new GZIPInputStream(new
ByteArrayInputStream(body))) {
final String decompressed = IOUtils.toString(gzipInputStream,
StandardCharsets.UTF_8);
assertEquals(FLOW_FILE_CONTENT, decompressed);
}
@@ -795,10 +827,10 @@ public class InvokeHTTPTest {
assertRelationshipStatusCodeEquals(InvokeHTTP.RESPONSE, HTTP_OK);
final RecordedRequest request = takeRequestCompleted();
- final String contentLength = request.getHeader(CONTENT_LENGTH_HEADER);
+ final String contentLength =
request.getHeaders().get(CONTENT_LENGTH_HEADER);
assertNull(contentLength, "Content-Length Request Header found");
- final String transferEncoding =
request.getHeader(TRANSFER_ENCODING_HEADER);
+ final String transferEncoding =
request.getHeaders().get(TRANSFER_ENCODING_HEADER);
assertEquals("chunked", transferEncoding);
}
@@ -815,7 +847,9 @@ public class InvokeHTTPTest {
runner.setProperty(formDataPropertyName, formDataParameter);
setUrlProperty();
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
runner.enqueue(FLOW_FILE_CONTENT);
runner.run();
@@ -823,13 +857,13 @@ public class InvokeHTTPTest {
assertRelationshipStatusCodeEquals(InvokeHTTP.RESPONSE, HTTP_OK);
final RecordedRequest request = takeRequestCompleted();
- final String contentType = request.getHeader(CONTENT_TYPE_HEADER);
+ final String contentType =
request.getHeaders().get(CONTENT_TYPE_HEADER);
assertNotNull(contentType, "Content Type not found");
final Pattern multipartPattern =
Pattern.compile("^multipart/form-data.+$");
assertTrue(multipartPattern.matcher(contentType).matches(), "Content
Type not matched");
- final String body = request.getBody().readUtf8();
+ final String body = request.getBody().utf8();
assertTrue(body.contains(formDataParameter), "Form Data Parameter not
found");
}
@@ -852,7 +886,9 @@ public class InvokeHTTPTest {
ffAttributes.put(CoreAttributes.FILENAME.key(),
FLOW_FILE_INITIAL_FILENAME);
runner.enqueue(FLOW_FILE_CONTENT, ffAttributes);
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
runner.run();
@@ -952,7 +988,7 @@ public class InvokeHTTPTest {
setUrlProperty();
- mockWebServer.enqueue(new MockResponse());
+ mockWebServer.enqueue(new MockResponse.Builder().build());
runner.setProperty(InvokeHTTP.REQUEST_OAUTH2_ACCESS_TOKEN_PROVIDER,
oauth2AccessTokenProviderId);
runner.enqueue("unimportant");
@@ -960,7 +996,7 @@ public class InvokeHTTPTest {
RecordedRequest recordedRequest = mockWebServer.takeRequest();
- String actualAuthorizationHeader =
recordedRequest.getHeader(HttpHeader.AUTHORIZATION.getHeader());
+ String actualAuthorizationHeader =
recordedRequest.getHeaders().get(HttpHeader.AUTHORIZATION.getHeader());
assertEquals("Bearer " + accessToken, actualAuthorizationHeader);
}
@@ -983,7 +1019,7 @@ public class InvokeHTTPTest {
enqueueResponseCodeAndRun(HTTP_UNAUTHORIZED);
RecordedRequest recordedRequest = mockWebServer.takeRequest();
- String actualAuthorizationHeader =
recordedRequest.getHeader(HttpHeader.AUTHORIZATION.getHeader());
+ String actualAuthorizationHeader =
recordedRequest.getHeaders().get(HttpHeader.AUTHORIZATION.getHeader());
assertEquals("Bearer " + accessToken, actualAuthorizationHeader);
assertRelationshipStatusCodeEquals(InvokeHTTP.NO_RETRY,
HTTP_UNAUTHORIZED);
@@ -994,7 +1030,7 @@ public class InvokeHTTPTest {
enqueueResponseCodeAndRun(HTTP_OK);
recordedRequest = mockWebServer.takeRequest();
- actualAuthorizationHeader =
recordedRequest.getHeader(HttpHeader.AUTHORIZATION.getHeader());
+ actualAuthorizationHeader =
recordedRequest.getHeaders().get(HttpHeader.AUTHORIZATION.getHeader());
assertEquals("Bearer " + refreshedAccessToken,
actualAuthorizationHeader);
assertResponseSuccessRelationships();
@@ -1011,7 +1047,9 @@ public class InvokeHTTPTest {
private void enqueueResponseCodeAndRun(final int responseCode) {
setUrlProperty();
- mockWebServer.enqueue(new
MockResponse().setResponseCode(responseCode));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(responseCode)
+ .build());
runner.enqueue(FLOW_FILE_CONTENT);
runner.run();
}
@@ -1113,6 +1151,6 @@ public class InvokeHTTPTest {
if (sslSocketFactory == null) {
throw new IllegalArgumentException("Socket Factory not found");
}
- mockWebServer.useHttps(sslSocketFactory, false);
+ mockWebServer.useHttps(sslSocketFactory);
}
}
diff --git
a/nifi-extension-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/pom.xml
b/nifi-extension-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/pom.xml
index 605215cfc0..0731b51bbd 100644
---
a/nifi-extension-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/pom.xml
+++
b/nifi-extension-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/pom.xml
@@ -88,7 +88,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>okhttp</artifactId>
+ <artifactId>okhttp-jvm</artifactId>
</dependency>
<dependency>
<groupId>com.squareup.okio</groupId>
@@ -124,7 +124,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/src/test/java/org/apache/nifi/lookup/TestRestLookupService.java
b/nifi-extension-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/src/test/java/org/apache/nifi/lookup/TestRestLookupService.java
index 04901cc123..b8ba05777a 100644
---
a/nifi-extension-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/src/test/java/org/apache/nifi/lookup/TestRestLookupService.java
+++
b/nifi-extension-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/src/test/java/org/apache/nifi/lookup/TestRestLookupService.java
@@ -16,9 +16,9 @@
*/
package org.apache.nifi.lookup;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import org.apache.nifi.oauth2.OAuth2AccessTokenProvider;
import org.apache.nifi.reporting.InitializationException;
import org.apache.nifi.serialization.RecordReader;
@@ -27,9 +27,9 @@ import org.apache.nifi.serialization.record.Record;
import org.apache.nifi.util.NoOpProcessor;
import org.apache.nifi.util.TestRunner;
import org.apache.nifi.util.TestRunners;
-import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Timeout;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.Answers;
@@ -38,7 +38,6 @@ import org.mockito.junit.jupiter.MockitoExtension;
import java.io.IOException;
import java.net.SocketTimeoutException;
-import java.nio.charset.StandardCharsets;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -96,8 +95,9 @@ class TestRestLookupService {
private RestLookupService restLookupService;
@BeforeEach
- void setRunner() throws InitializationException {
+ void setRunner() throws InitializationException, IOException {
mockWebServer = new MockWebServer();
+ mockWebServer.start();
runner = TestRunners.newTestRunner(NoOpProcessor.class);
@@ -116,7 +116,7 @@ class TestRestLookupService {
@AfterEach
void shutdownServer() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
@@ -133,7 +133,9 @@ class TestRestLookupService {
runner.enableControllerService(restLookupService);
when(recordReaderFactory.createRecordReader(any(), any(), anyLong(),
any())).thenReturn(recordReader);
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
final Optional<Record> recordFound =
restLookupService.lookup(Collections.emptyMap());
assertFalse(recordFound.isPresent());
@@ -147,7 +149,9 @@ class TestRestLookupService {
when(recordReaderFactory.createRecordReader(any(), any(), anyLong(),
any())).thenReturn(recordReader);
when(recordReader.nextRecord()).thenReturn(record);
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
final Optional<Record> recordFound =
restLookupService.lookup(Collections.emptyMap());
assertTrue(recordFound.isPresent());
@@ -161,7 +165,9 @@ class TestRestLookupService {
when(recordReaderFactory.createRecordReader(any(), any(), anyLong(),
any())).thenReturn(recordReader);
when(recordReader.nextRecord()).thenReturn(record);
- mockWebServer.enqueue(new MockResponse().setResponseCode(HTTP_OK));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .build());
final Map<String, Object> coordinates = new LinkedHashMap<>();
coordinates.put(RestLookupService.METHOD_KEY, POST_METHOD);
@@ -182,9 +188,11 @@ class TestRestLookupService {
when(recordReaderFactory.createRecordReader(any(), any(), anyLong(),
any())).thenReturn(recordReader);
when(recordReader.nextRecord()).thenReturn(record);
- mockWebServer.enqueue(new
MockResponse().setResponseCode(HTTP_NOT_FOUND)
- .setHeader("Content-type", "application/json")
- .setBody("{\"error\": { \"code\": 404 } }"));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_NOT_FOUND)
+ .addHeader("Content-type", "application/json")
+ .body("{\"error\": { \"code\": 404 } }")
+ .build());
final Optional<Record> recordFound =
restLookupService.lookup(Collections.emptyMap());
assertTrue(recordFound.isPresent());
@@ -194,7 +202,9 @@ class TestRestLookupService {
void testLookupResponseHandlingStrategyEvaluated() {
runner.setProperty(restLookupService,
RestLookupService.RESPONSE_HANDLING_STRATEGY,
ResponseHandlingStrategy.EVALUATED);
runner.enableControllerService(restLookupService);
- mockWebServer.enqueue(new
MockResponse().setResponseCode(HTTP_NOT_FOUND));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(HTTP_NOT_FOUND)
+ .build());
final LookupFailureException exception =
assertThrows(LookupFailureException.class, () ->
restLookupService.lookup(Collections.emptyMap()));
assertInstanceOf(IOException.class, exception.getCause());
@@ -217,14 +227,14 @@ class TestRestLookupService {
when(recordReaderFactory.createRecordReader(any(), any(), anyLong(),
any())).thenReturn(recordReader);
when(recordReader.nextRecord()).thenReturn(record);
- mockWebServer.enqueue(new MockResponse());
+ mockWebServer.enqueue(new MockResponse.Builder().build());
final Optional<Record> recordFound =
restLookupService.lookup(Collections.emptyMap());
assertTrue(recordFound.isPresent());
RecordedRequest recordedRequest = mockWebServer.takeRequest();
- String actualAuthorizationHeader =
recordedRequest.getHeader("Authorization");
+ String actualAuthorizationHeader =
recordedRequest.getHeaders().get("Authorization");
assertEquals("Bearer " + accessToken, actualAuthorizationHeader);
}
@@ -233,17 +243,17 @@ class TestRestLookupService {
final RecordedRequest request = mockWebServer.takeRequest();
assertEquals(GET_METHOD, request.getMethod());
- assertEquals(ROOT_PATH, request.getPath());
+ assertEquals(ROOT_PATH, request.getTarget());
}
private void assertPostRecordedRequestFound() throws InterruptedException {
final RecordedRequest request = mockWebServer.takeRequest();
assertEquals(POST_METHOD, request.getMethod());
- assertEquals(ROOT_PATH, request.getPath());
- assertEquals(APPLICATION_JSON, request.getHeader(CONTENT_TYPE_HEADER));
+ assertEquals(ROOT_PATH, request.getTarget());
+ assertEquals(APPLICATION_JSON,
request.getHeaders().get(CONTENT_TYPE_HEADER));
- final String body =
request.getBody().readString(StandardCharsets.UTF_8);
+ final String body = request.getBody().utf8();
assertEquals(POST_BODY, body);
}
}
diff --git
a/nifi-extension-bundles/nifi-standard-services/nifi-oauth2-provider-bundle/nifi-oauth2-provider-service/pom.xml
b/nifi-extension-bundles/nifi-standard-services/nifi-oauth2-provider-bundle/nifi-oauth2-provider-service/pom.xml
index 8148059019..5f421b82b0 100644
---
a/nifi-extension-bundles/nifi-standard-services/nifi-oauth2-provider-bundle/nifi-oauth2-provider-service/pom.xml
+++
b/nifi-extension-bundles/nifi-standard-services/nifi-oauth2-provider-bundle/nifi-oauth2-provider-service/pom.xml
@@ -49,7 +49,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>okhttp</artifactId>
+ <artifactId>okhttp-jvm</artifactId>
</dependency>
<dependency>
<groupId>com.nimbusds</groupId>
diff --git
a/nifi-extension-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/pom.xml
b/nifi-extension-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/pom.xml
index 060981c484..0705217aa7 100644
---
a/nifi-extension-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/pom.xml
+++
b/nifi-extension-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/pom.xml
@@ -59,7 +59,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/src/test/java/org/apache/nifi/record/sink/TestHttpRecordSink.java
b/nifi-extension-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/src/test/java/org/apache/nifi/record/sink/TestHttpRecordSink.java
index 8c5ada3f3b..5c8bd6cccb 100644
---
a/nifi-extension-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/src/test/java/org/apache/nifi/record/sink/TestHttpRecordSink.java
+++
b/nifi-extension-bundles/nifi-standard-services/nifi-record-sink-service-bundle/nifi-record-sink-service/src/test/java/org/apache/nifi/record/sink/TestHttpRecordSink.java
@@ -18,9 +18,9 @@
package org.apache.nifi.record.sink;
import com.fasterxml.jackson.databind.ObjectMapper;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import org.apache.nifi.json.JsonRecordSetWriter;
import org.apache.nifi.oauth2.OAuth2AccessTokenProvider;
import org.apache.nifi.reporting.InitializationException;
@@ -46,7 +46,6 @@ import org.junit.jupiter.api.Test;
import org.mockito.Answers;
import java.io.IOException;
-import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
@@ -146,7 +145,7 @@ public class TestHttpRecordSink {
@AfterEach
public void cleanUpEachTest() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
@@ -250,7 +249,7 @@ public class TestHttpRecordSink {
testRunner.enableControllerService(httpRecordSink);
for (int i = 0; i < expectedRequestCount; i++) {
- mockWebServer.enqueue(new MockResponse());
+ mockWebServer.enqueue(new MockResponse.Builder().build());
}
final WriteResult writeResult = httpRecordSink.sendData(recordSetIn,
Collections.emptyMap(), false);
@@ -263,7 +262,7 @@ public class TestHttpRecordSink {
for (int i = 0; i < expectedRequestCount; i++) {
RecordedRequest recordedRequest = mockWebServer.takeRequest();
- String requestBody =
recordedRequest.getBody().readString(StandardCharsets.UTF_8);
+ String requestBody = recordedRequest.getBody().utf8();
Person[] people =
(maxBatchSize == 1)
? new Person[] {
@@ -277,10 +276,10 @@ public class TestHttpRecordSink {
assertTrue(people[personIndex].equals(records[compareIndex]),
"Mismatch - Expected: " + records[compareIndex].toMap().toString() +
" Actual: {" + people[personIndex].toString() + "}
order of fields can be ignored.");
}
- String actualContentTypeHeader =
recordedRequest.getHeader(HttpHeader.CONTENT_TYPE.toString());
+ String actualContentTypeHeader =
recordedRequest.getHeaders().get(HttpHeader.CONTENT_TYPE.toString());
assertEquals(expectedContentType != null ? expectedContentType :
"application/json", actualContentTypeHeader);
- String actualAuthorizationHeader =
recordedRequest.getHeader(HttpHeader.AUTHORIZATION.toString());
+ String actualAuthorizationHeader =
recordedRequest.getHeaders().get(HttpHeader.AUTHORIZATION.toString());
assertEquals("Bearer " + (expectedAuthorization != null ?
expectedAuthorization : OAUTH_ACCESS_TOKEN),
actualAuthorizationHeader);
}
diff --git
a/nifi-extension-bundles/nifi-standard-services/nifi-web-client-provider-bundle/nifi-web-client-provider-service/pom.xml
b/nifi-extension-bundles/nifi-standard-services/nifi-web-client-provider-bundle/nifi-web-client-provider-service/pom.xml
index 6c4f3b3f4f..457ac2c7a8 100644
---
a/nifi-extension-bundles/nifi-standard-services/nifi-web-client-provider-bundle/nifi-web-client-provider-service/pom.xml
+++
b/nifi-extension-bundles/nifi-standard-services/nifi-web-client-provider-bundle/nifi-web-client-provider-service/pom.xml
@@ -61,7 +61,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-standard-services/nifi-web-client-provider-bundle/nifi-web-client-provider-service/src/test/java/org/apache/nifi/web/client/provider/service/StandardWebClientServiceProviderTest.java
b/nifi-extension-bundles/nifi-standard-services/nifi-web-client-provider-bundle/nifi-web-client-provider-service/src/test/java/org/apache/nifi/web/client/provider/service/StandardWebClientServiceProviderTest.java
index b8564b713d..d067d54937 100644
---
a/nifi-extension-bundles/nifi-standard-services/nifi-web-client-provider-bundle/nifi-web-client-provider-service/src/test/java/org/apache/nifi/web/client/provider/service/StandardWebClientServiceProviderTest.java
+++
b/nifi-extension-bundles/nifi-standard-services/nifi-web-client-provider-bundle/nifi-web-client-provider-service/src/test/java/org/apache/nifi/web/client/provider/service/StandardWebClientServiceProviderTest.java
@@ -16,11 +16,11 @@
*/
package org.apache.nifi.web.client.provider.service;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import okhttp3.Credentials;
import okhttp3.HttpUrl;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
import org.apache.nifi.proxy.ProxyConfiguration;
import org.apache.nifi.proxy.ProxyConfigurationService;
import org.apache.nifi.reporting.InitializationException;
@@ -48,6 +48,7 @@ import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.X509TrustManager;
import javax.security.auth.x500.X500Principal;
+
import java.io.IOException;
import java.net.InetSocketAddress;
import java.net.Proxy;
@@ -93,8 +94,6 @@ class StandardWebClientServiceProviderTest {
private static final String PROXY_AUTHORIZATION_HEADER =
"Proxy-Authorization";
- private static final boolean TUNNEL_PROXY_DISABLED = false;
-
static SSLContext sslContext;
static X509TrustManager trustManager;
@@ -130,8 +129,9 @@ class StandardWebClientServiceProviderTest {
}
@BeforeEach
- void setRunner() throws InitializationException {
+ void setRunner() throws InitializationException, IOException {
mockWebServer = new MockWebServer();
+ mockWebServer.start();
runner = TestRunners.newTestRunner(NoOpProcessor.class);
@@ -141,7 +141,7 @@ class StandardWebClientServiceProviderTest {
@AfterEach
void shutdownServer() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
@@ -193,14 +193,14 @@ class StandardWebClientServiceProviderTest {
assertNotNull(webClientService);
final SSLSocketFactory sslSocketFactory =
sslContext.getSocketFactory();
- mockWebServer.useHttps(sslSocketFactory, TUNNEL_PROXY_DISABLED);
+ mockWebServer.useHttps(sslSocketFactory);
assertGetUriCompleted(webClientService);
}
@Test
void testGetWebServiceClientProxyConfigurationGetUri() throws
InitializationException, InterruptedException {
- final Proxy proxy = mockWebServer.toProxyAddress();
+ final Proxy proxy = mockWebServer.getProxyAddress();
final InetSocketAddress proxyAddress = (InetSocketAddress)
proxy.address();
final ProxyConfiguration proxyConfiguration = new ProxyConfiguration();
@@ -216,9 +216,10 @@ class StandardWebClientServiceProviderTest {
when(proxyConfigurationService.getIdentifier()).thenReturn(PROXY_SERVICE_ID);
when(proxyConfigurationService.getConfiguration()).thenReturn(proxyConfiguration);
- mockWebServer.enqueue(new MockResponse()
-
.setResponseCode(HttpResponseStatus.PROXY_AUTHENTICATION_REQUIRED.getCode())
- .setHeader(PROXY_AUTHENTICATE_HEADER,
PROXY_AUTHENTICATE_BASIC_REALM)
+ mockWebServer.enqueue(new MockResponse.Builder()
+
.code(HttpResponseStatus.PROXY_AUTHENTICATION_REQUIRED.getCode())
+ .addHeader(PROXY_AUTHENTICATE_HEADER,
PROXY_AUTHENTICATE_BASIC_REALM)
+ .build()
);
runner.addControllerService(PROXY_SERVICE_ID,
proxyConfigurationService);
@@ -234,7 +235,7 @@ class StandardWebClientServiceProviderTest {
assertGetUriCompleted(webClientService);
final RecordedRequest proxyAuthorizationRequest =
mockWebServer.takeRequest();
- final String proxyAuthorization =
proxyAuthorizationRequest.getHeader(PROXY_AUTHORIZATION_HEADER);
+ final String proxyAuthorization =
proxyAuthorizationRequest.getHeaders().get(PROXY_AUTHORIZATION_HEADER);
final String credentials = Credentials.basic(username, password);
assertEquals(credentials, proxyAuthorization);
}
@@ -243,7 +244,9 @@ class StandardWebClientServiceProviderTest {
final URI uri =
mockWebServer.url(ROOT_PATH).newBuilder().host(LOCALHOST).build().uri();
final HttpResponseStatus httpResponseStatus = HttpResponseStatus.OK;
- final MockResponse mockResponse = new
MockResponse().setResponseCode(httpResponseStatus.getCode());
+ final MockResponse mockResponse = new MockResponse.Builder()
+ .code(httpResponseStatus.getCode())
+ .build();
mockWebServer.enqueue(mockResponse);
final HttpResponseEntity httpResponseEntity =
webClientService.get().uri(uri).retrieve();
@@ -252,7 +255,7 @@ class StandardWebClientServiceProviderTest {
assertEquals(httpResponseStatus.getCode(),
httpResponseEntity.statusCode());
final RecordedRequest request = mockWebServer.takeRequest();
- final HttpUrl requestUrl = request.getRequestUrl();
+ final HttpUrl requestUrl = request.getUrl();
assertNotNull(requestUrl);
final URI requestUri = requestUrl.uri();
diff --git
a/nifi-extension-bundles/nifi-workday-bundle/nifi-workday-processors/pom.xml
b/nifi-extension-bundles/nifi-workday-bundle/nifi-workday-processors/pom.xml
index c3355d2ade..2fc7ad30ae 100644
--- a/nifi-extension-bundles/nifi-workday-bundle/nifi-workday-processors/pom.xml
+++ b/nifi-extension-bundles/nifi-workday-bundle/nifi-workday-processors/pom.xml
@@ -52,7 +52,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
diff --git
a/nifi-extension-bundles/nifi-workday-bundle/nifi-workday-processors/src/test/java/org/apache/nifi/processors/workday/GetWorkdayReportTest.java
b/nifi-extension-bundles/nifi-workday-bundle/nifi-workday-processors/src/test/java/org/apache/nifi/processors/workday/GetWorkdayReportTest.java
index 12e932d82c..c6bb368294 100644
---
a/nifi-extension-bundles/nifi-workday-bundle/nifi-workday-processors/src/test/java/org/apache/nifi/processors/workday/GetWorkdayReportTest.java
+++
b/nifi-extension-bundles/nifi-workday-bundle/nifi-workday-processors/src/test/java/org/apache/nifi/processors/workday/GetWorkdayReportTest.java
@@ -17,9 +17,9 @@
package org.apache.nifi.processors.workday;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import org.apache.nifi.csv.CSVRecordSetWriter;
import org.apache.nifi.flowfile.attributes.CoreAttributes;
import org.apache.nifi.json.JsonTreeReader;
@@ -80,14 +80,15 @@ class GetWorkdayReportTest {
private MockWebServer mockWebServer;
@BeforeEach
- public void setRunner() {
+ public void setRunner() throws IOException {
runner = TestRunners.newTestRunner(new GetWorkdayReport());
mockWebServer = new MockWebServer();
+ mockWebServer.start();
}
@AfterEach
public void shutdownServer() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Nested
@@ -222,7 +223,9 @@ class GetWorkdayReportTest {
withWebClientService();
runner.setProperty(GetWorkdayReport.REPORT_URL, getMockWebServerUrl());
- mockWebServer.enqueue(new MockResponse().setResponseCode(500));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(500)
+ .build());
runner.run();
@@ -240,7 +243,9 @@ class GetWorkdayReportTest {
withWebClientService();
runner.setProperty(GetWorkdayReport.REPORT_URL, getMockWebServerUrl());
- mockWebServer.enqueue(new MockResponse().setResponseCode(500));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(500)
+ .build());
runner.enqueue("test");
runner.run();
@@ -280,7 +285,11 @@ class GetWorkdayReportTest {
runner.setProperty(GetWorkdayReport.REPORT_URL, getMockWebServerUrl());
String content = "id,name\n1,2";
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(content).setHeader(CONTENT_TYPE,
TEXT_CSV));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(content)
+ .addHeader(CONTENT_TYPE, TEXT_CSV)
+ .build());
runner.run();
@@ -305,7 +314,11 @@ class GetWorkdayReportTest {
runner.setProperty(GetWorkdayReport.REPORT_URL, getMockWebServerUrl());
String content = "id,name\n1,2";
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(content).setHeader(CONTENT_TYPE,
TEXT_CSV));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(content)
+ .addHeader(CONTENT_TYPE, TEXT_CSV)
+ .build());
runner.enqueue("");
runner.run();
@@ -337,7 +350,11 @@ class GetWorkdayReportTest {
String jsonContent = "{\"id\": 1, \"name\": \"test\"}";
String csvContent = "id,name\n1,test\n";
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setBody(jsonContent).setHeader(CONTENT_TYPE,
APPLICATION_JSON));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .body(jsonContent)
+ .addHeader(CONTENT_TYPE, APPLICATION_JSON)
+ .build());
runner.run();
@@ -362,12 +379,15 @@ class GetWorkdayReportTest {
runner.setProperty(GetWorkdayReport.AUTH_TYPE,
GetWorkdayReport.OAUTH_TYPE);
withAccessTokenProvider();
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setHeader(CONTENT_TYPE, APPLICATION_JSON));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .addHeader(CONTENT_TYPE, APPLICATION_JSON)
+ .build());
runner.run();
RecordedRequest recordedRequest = mockWebServer.takeRequest(1,
TimeUnit.SECONDS);
- String authorization = recordedRequest.getHeader(HEADER_AUTHORIZATION);
+ String authorization =
recordedRequest.getHeaders().get(HEADER_AUTHORIZATION);
assertNotNull(authorization, "Authorization Header not found");
Pattern bearerPattern = Pattern.compile("^Bearer \\S+$");
@@ -382,12 +402,15 @@ class GetWorkdayReportTest {
withWebClientService();
runner.setProperty(GetWorkdayReport.REPORT_URL, getMockWebServerUrl());
- mockWebServer.enqueue(new
MockResponse().setResponseCode(200).setHeader(CONTENT_TYPE, APPLICATION_JSON));
+ mockWebServer.enqueue(new MockResponse.Builder()
+ .code(200)
+ .addHeader(CONTENT_TYPE, APPLICATION_JSON)
+ .build());
runner.run();
RecordedRequest recordedRequest = mockWebServer.takeRequest(1,
TimeUnit.SECONDS);
- String authorization = recordedRequest.getHeader(HEADER_AUTHORIZATION);
+ String authorization =
recordedRequest.getHeaders().get(HEADER_AUTHORIZATION);
assertNotNull(authorization, "Authorization Header not found");
Pattern basicAuthPattern = Pattern.compile("^Basic \\S+$");
diff --git
a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/pom.xml
b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/pom.xml
index a6d3c83d7b..264fae2845 100644
--- a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/pom.xml
+++ b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/pom.xml
@@ -59,7 +59,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/src/test/java/org/apache/nifi/processors/zendesk/GetZendeskTest.java
b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/src/test/java/org/apache/nifi/processors/zendesk/GetZendeskTest.java
index 3ec43431f6..42795b53a6 100644
---
a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/src/test/java/org/apache/nifi/processors/zendesk/GetZendeskTest.java
+++
b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/src/test/java/org/apache/nifi/processors/zendesk/GetZendeskTest.java
@@ -17,10 +17,10 @@
package org.apache.nifi.processors.zendesk;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import okhttp3.HttpUrl;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
import org.apache.nifi.common.zendesk.ZendeskAuthenticationType;
import org.apache.nifi.reporting.InitializationException;
import org.apache.nifi.util.MockFlowFile;
@@ -50,9 +50,9 @@ import static
org.apache.nifi.common.zendesk.ZendeskProperties.ZENDESK_AUTHENTIC
import static
org.apache.nifi.common.zendesk.ZendeskProperties.ZENDESK_SUBDOMAIN;
import static org.apache.nifi.common.zendesk.ZendeskProperties.ZENDESK_USER;
import static org.apache.nifi.components.state.Scope.CLUSTER;
+import static
org.apache.nifi.processors.zendesk.AbstractZendesk.RECORD_COUNT_ATTRIBUTE_NAME;
+import static org.apache.nifi.processors.zendesk.AbstractZendesk.REL_SUCCESS;
import static
org.apache.nifi.processors.zendesk.GetZendesk.HTTP_TOO_MANY_REQUESTS;
-import static
org.apache.nifi.processors.zendesk.GetZendesk.RECORD_COUNT_ATTRIBUTE_NAME;
-import static org.apache.nifi.processors.zendesk.GetZendesk.REL_SUCCESS;
import static
org.apache.nifi.processors.zendesk.GetZendesk.ZENDESK_EXPORT_METHOD;
import static
org.apache.nifi.processors.zendesk.GetZendesk.ZENDESK_QUERY_START_TIMESTAMP;
import static org.apache.nifi.processors.zendesk.GetZendesk.ZENDESK_RESOURCE;
@@ -118,14 +118,17 @@ public class GetZendeskTest {
@AfterEach
void tearDown() throws IOException {
- server.shutdown();
+ server.close();
}
@ParameterizedTest
@MethodSource("supportedZendeskResourcesExportMethodCombinations")
public void
testQueryStartTimestampIsUsedWhenNoStateIsAvailable(ZendeskResource
zendeskResource, ZendeskExportMethod exportMethod) throws InterruptedException {
// given
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
testRunner.setProperty(ZENDESK_RESOURCE, zendeskResource);
testRunner.setProperty(ZENDESK_EXPORT_METHOD, exportMethod);
@@ -136,14 +139,17 @@ public class GetZendeskTest {
RecordedRequest request = server.takeRequest();
assertEquals(
zendeskResource.apiPath(exportMethod) + "?" +
exportMethod.getInitialCursorQueryParameterName() + "=" +
DEFAULT_QUERY_START_TIMESTAMP,
- request.getPath());
+ request.getTarget());
}
@ParameterizedTest
@MethodSource("supportedZendeskResourcesExportMethodCombinations")
public void testCursorFromStateIsUsedWhenStateIsAvailable(ZendeskResource
zendeskResource, ZendeskExportMethod exportMethod) throws InterruptedException,
IOException {
// given
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
testRunner.setProperty(ZENDESK_RESOURCE, zendeskResource);
testRunner.setProperty(ZENDESK_EXPORT_METHOD, exportMethod);
testRunner.getStateManager().setState(singletonMap(zendeskResource.getValue() +
exportMethod.getValue(), DEFAULT_CURSOR_VALUE), CLUSTER);
@@ -155,15 +161,17 @@ public class GetZendeskTest {
RecordedRequest request = server.takeRequest();
assertEquals(
zendeskResource.apiPath(exportMethod) + "?" +
exportMethod.getCursorQueryParameterName() + "=" + DEFAULT_CURSOR_VALUE,
- request.getPath());
+ request.getTarget());
}
@ParameterizedTest
@MethodSource("supportedZendeskResourcesExportMethodCombinations")
public void testCursorPositionIsStoredInState(ZendeskResource
zendeskResource, ZendeskExportMethod exportMethod) throws IOException {
// given
- server.enqueue(new MockResponse().setResponseCode(HTTP_OK)
- .setBody(format(RESPONSE_WITH_CURSOR_FIELD_TEMPLATE,
exportMethod.getCursorJsonFieldName())));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(format(RESPONSE_WITH_CURSOR_FIELD_TEMPLATE,
exportMethod.getCursorJsonFieldName()))
+ .build());
testRunner.setProperty(ZENDESK_RESOURCE, zendeskResource);
testRunner.setProperty(ZENDESK_EXPORT_METHOD, exportMethod);
String stateKey = zendeskResource.getValue() + exportMethod.getValue();
@@ -180,8 +188,10 @@ public class GetZendeskTest {
@MethodSource("supportedZendeskResourcesExportMethodCombinations")
public void
testFlowFileIsCreatedAndContentIsAddedAndFlowFileAttributeIsSet(ZendeskResource
zendeskResource, ZendeskExportMethod exportMethod) throws InterruptedException {
// given
- server.enqueue(new MockResponse().setResponseCode(HTTP_OK)
- .setBody(format(RESPONSE_WITH_THREE_RECORDS_TEMPLATE,
zendeskResource.getResponseFieldName())));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(format(RESPONSE_WITH_THREE_RECORDS_TEMPLATE,
zendeskResource.getResponseFieldName()))
+ .build());
testRunner.setProperty(ZENDESK_RESOURCE, zendeskResource);
testRunner.setProperty(ZENDESK_EXPORT_METHOD, exportMethod);
@@ -200,8 +210,10 @@ public class GetZendeskTest {
@MethodSource("supportedZendeskResourcesExportMethodCombinations")
public void testNoFlowFileIsEmittedWhenZeroRecordsAreSent(ZendeskResource
zendeskResource, ZendeskExportMethod exportMethod) throws InterruptedException {
// given
- server.enqueue(new MockResponse().setResponseCode(HTTP_OK)
- .setBody(format(RESPONSE_WITH_ZERO_RECORDS_TEMPLATE,
zendeskResource.getResponseFieldName())));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(format(RESPONSE_WITH_ZERO_RECORDS_TEMPLATE,
zendeskResource.getResponseFieldName()))
+ .build());
testRunner.setProperty(ZENDESK_RESOURCE, zendeskResource);
testRunner.setProperty(ZENDESK_EXPORT_METHOD, exportMethod);
@@ -216,7 +228,9 @@ public class GetZendeskTest {
@Test
public void
testNoFlowFileIsEmittedWhenTooManyRequestResponseCodeReceived() {
// given
- server.enqueue(new
MockResponse().setResponseCode(HTTP_TOO_MANY_REQUESTS));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_TOO_MANY_REQUESTS)
+ .build());
testRunner.setProperty(ZENDESK_RESOURCE, TICKETS);
testRunner.setProperty(ZENDESK_EXPORT_METHOD, CURSOR);
@@ -231,8 +245,10 @@ public class GetZendeskTest {
@Test
public void testNoFlowFileIsEmittedWhenNonOkHttpResponseIsSent() {
// given
- server.enqueue(new MockResponse().setResponseCode(HTTP_BAD_REQUEST)
- .setBody(format(RESPONSE_WITH_ZERO_RECORDS_TEMPLATE,
TICKETS.getResponseFieldName())));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_BAD_REQUEST)
+ .body(format(RESPONSE_WITH_ZERO_RECORDS_TEMPLATE,
TICKETS.getResponseFieldName()))
+ .build());
testRunner.setProperty(ZENDESK_RESOURCE, TICKETS);
testRunner.setProperty(ZENDESK_EXPORT_METHOD, CURSOR);
diff --git
a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/src/test/java/org/apache/nifi/processors/zendesk/PutZendeskTicketTest.java
b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/src/test/java/org/apache/nifi/processors/zendesk/PutZendeskTicketTest.java
index e1c6763bef..98b2963610 100644
---
a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/src/test/java/org/apache/nifi/processors/zendesk/PutZendeskTicketTest.java
+++
b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-processors/src/test/java/org/apache/nifi/processors/zendesk/PutZendeskTicketTest.java
@@ -17,10 +17,10 @@
package org.apache.nifi.processors.zendesk;
import com.fasterxml.jackson.databind.ObjectMapper;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import okhttp3.HttpUrl;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
import org.apache.nifi.common.zendesk.ZendeskAuthenticationType;
import org.apache.nifi.reporting.InitializationException;
import org.apache.nifi.serialization.record.MockRecordParser;
@@ -49,9 +49,9 @@ import static
org.apache.nifi.common.zendesk.ZendeskProperties.ZENDESK_TICKET_SU
import static
org.apache.nifi.common.zendesk.ZendeskProperties.ZENDESK_TICKET_TYPE;
import static org.apache.nifi.common.zendesk.ZendeskProperties.ZENDESK_USER;
import static
org.apache.nifi.processors.zendesk.AbstractZendesk.RECORD_COUNT_ATTRIBUTE_NAME;
+import static org.apache.nifi.processors.zendesk.AbstractZendesk.REL_SUCCESS;
import static
org.apache.nifi.processors.zendesk.PutZendeskTicket.RECORD_READER;
import static org.apache.nifi.processors.zendesk.PutZendeskTicket.REL_FAILURE;
-import static org.apache.nifi.processors.zendesk.PutZendeskTicket.REL_SUCCESS;
import static org.apache.nifi.util.TestRunners.newTestRunner;
import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -86,7 +86,7 @@ public class PutZendeskTicketTest {
@AfterEach
void tearDown() throws IOException {
- server.shutdown();
+ server.close();
}
@Test
@@ -107,7 +107,10 @@ public class PutZendeskTicketTest {
flowFile.setData(flowFileContent.getBytes());
// given
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
// when
testRunner.enqueue(flowFile);
@@ -115,8 +118,8 @@ public class PutZendeskTicketTest {
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getPath());
- assertEquals(OBJECT_MAPPER.readTree(flowFileContent),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getTarget());
+ assertEquals(OBJECT_MAPPER.readTree(flowFileContent),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
testRunner.assertAllFlowFilesTransferred(REL_SUCCESS);
}
@@ -134,7 +137,10 @@ public class PutZendeskTicketTest {
testRunner.setProperty(RECORD_READER, "mock-reader-factory");
// given
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
testRunner.setProperty(ZENDESK_TICKET_COMMENT_BODY, "@{/description}");
testRunner.setProperty(ZENDESK_TICKET_SUBJECT, "@{/subject}");
testRunner.setProperty(ZENDESK_TICKET_PRIORITY, "@{/priority}");
@@ -146,7 +152,7 @@ public class PutZendeskTicketTest {
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getPath());
+ assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getTarget());
String expectedBody =
"{\n" +
@@ -160,7 +166,7 @@ public class PutZendeskTicketTest {
" }\n" +
"}";
- assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
testRunner.assertAllFlowFilesTransferred(REL_SUCCESS);
}
@@ -176,7 +182,10 @@ public class PutZendeskTicketTest {
testRunner.setProperty(RECORD_READER, "mock-reader-factory");
// given
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
testRunner.setProperty(ZENDESK_TICKET_COMMENT_BODY, "@{/description}");
// when
@@ -185,7 +194,7 @@ public class PutZendeskTicketTest {
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKETS_RESOURCE,
recordedRequest.getPath());
+ assertEquals(ZENDESK_CREATE_TICKETS_RESOURCE,
recordedRequest.getTarget());
String expectedBody =
"{\n" +
@@ -200,7 +209,7 @@ public class PutZendeskTicketTest {
" } ]\n" +
"}";
- assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
testRunner.assertAllFlowFilesTransferred(REL_SUCCESS);
}
@@ -217,7 +226,10 @@ public class PutZendeskTicketTest {
testRunner.setProperty(RECORD_READER, "mock-reader-factory");
// given
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
testRunner.setProperty(ZENDESK_TICKET_COMMENT_BODY, "@{/description}");
testRunner.setProperty("/dp1/dynamicPropertyTarget1",
"@{/dynamicPropertySource1}");
testRunner.setProperty("/dp1/dp2/dp3/dynamicPropertyTarget2",
"@{/dynamicPropertySource2}");
@@ -228,7 +240,7 @@ public class PutZendeskTicketTest {
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getPath());
+ assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getTarget());
String expectedBody =
"{\n" +
@@ -247,7 +259,7 @@ public class PutZendeskTicketTest {
" }\n" +
"}";
- assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
testRunner.assertAllFlowFilesTransferred(REL_SUCCESS);
}
@@ -264,7 +276,10 @@ public class PutZendeskTicketTest {
testRunner.setProperty(RECORD_READER, "mock-reader-factory");
// given
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
testRunner.setProperty(ZENDESK_TICKET_COMMENT_BODY, "@{/description}");
testRunner.setProperty("/dp1/dynamicPropertyTarget1", "Constant 1");
testRunner.setProperty("/dp1/dp2/dp3/dynamicPropertyTarget2",
"Constant2");
@@ -275,7 +290,7 @@ public class PutZendeskTicketTest {
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getPath());
+ assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getTarget());
String expectedBody =
"{\n" +
@@ -294,7 +309,7 @@ public class PutZendeskTicketTest {
" }\n" +
"}";
- assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
testRunner.assertAllFlowFilesTransferred(REL_SUCCESS);
}
@@ -309,7 +324,10 @@ public class PutZendeskTicketTest {
testRunner.setProperty(RECORD_READER, "mock-reader-factory");
// given
- server.enqueue(new
MockResponse().setResponseCode(HTTP_BAD_REQUEST).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_BAD_REQUEST)
+ .body(EMPTY_RESPONSE)
+ .build());
testRunner.setProperty(ZENDESK_TICKET_COMMENT_BODY, "@{/description}");
// when
diff --git
a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-services/pom.xml
b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-services/pom.xml
index f20fe4f1e4..75c0bc8b83 100644
--- a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-services/pom.xml
+++ b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-services/pom.xml
@@ -64,7 +64,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-services/src/test/java/org/apache/nifi/services/zendesk/ZendeskRecordSinkTest.java
b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-services/src/test/java/org/apache/nifi/services/zendesk/ZendeskRecordSinkTest.java
index ccaf608e59..ccf4f0d358 100644
---
a/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-services/src/test/java/org/apache/nifi/services/zendesk/ZendeskRecordSinkTest.java
+++
b/nifi-extension-bundles/nifi-zendesk-bundle/nifi-zendesk-services/src/test/java/org/apache/nifi/services/zendesk/ZendeskRecordSinkTest.java
@@ -17,10 +17,10 @@
package org.apache.nifi.services.zendesk;
import com.fasterxml.jackson.databind.ObjectMapper;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
+import mockwebserver3.RecordedRequest;
import okhttp3.HttpUrl;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
-import okhttp3.mockwebserver.RecordedRequest;
import org.apache.nifi.common.zendesk.ZendeskAuthenticationType;
import org.apache.nifi.reporting.InitializationException;
import org.apache.nifi.serialization.SimpleRecordSchema;
@@ -98,7 +98,7 @@ public class ZendeskRecordSinkTest {
@AfterEach
void tearDown() throws IOException {
- server.shutdown();
+ server.close();
}
private void initSingleTestRecord() {
@@ -170,14 +170,17 @@ public class ZendeskRecordSinkTest {
testRunner.assertValid(sinkZendeskTicket);
testRunner.enableControllerService(sinkZendeskTicket);
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
initSingleTestRecord();
WriteResult writeResult = sinkZendeskTicket.sendData(recordSet,
Collections.emptyMap(), false);
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getPath());
+ assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getTarget());
assertNotNull(writeResult);
assertEquals(1, writeResult.getRecordCount());
@@ -195,7 +198,7 @@ public class ZendeskRecordSinkTest {
" }\n" +
"}";
- assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
}
@Test
@@ -205,14 +208,17 @@ public class ZendeskRecordSinkTest {
testRunner.assertValid(sinkZendeskTicket);
testRunner.enableControllerService(sinkZendeskTicket);
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
initMultipleTestRecord();
WriteResult writeResult = sinkZendeskTicket.sendData(recordSet,
Collections.emptyMap(), false);
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKETS_RESOURCE,
recordedRequest.getPath());
+ assertEquals(ZENDESK_CREATE_TICKETS_RESOURCE,
recordedRequest.getTarget());
assertNotNull(writeResult);
assertEquals(2, writeResult.getRecordCount());
@@ -233,7 +239,7 @@ public class ZendeskRecordSinkTest {
" } ]\n" +
"}";
- assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
}
@Test
@@ -245,14 +251,17 @@ public class ZendeskRecordSinkTest {
testRunner.assertValid(sinkZendeskTicket);
testRunner.enableControllerService(sinkZendeskTicket);
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
initSingleTestRecord();
WriteResult writeResult = sinkZendeskTicket.sendData(recordSet,
Collections.emptyMap(), false);
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getPath());
+ assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getTarget());
assertNotNull(writeResult);
assertEquals(1, writeResult.getRecordCount());
@@ -275,7 +284,7 @@ public class ZendeskRecordSinkTest {
" }\n" +
"}";
- assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
}
@Test
@@ -287,14 +296,17 @@ public class ZendeskRecordSinkTest {
testRunner.assertValid(sinkZendeskTicket);
testRunner.enableControllerService(sinkZendeskTicket);
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
initSingleTestRecord();
WriteResult writeResult = sinkZendeskTicket.sendData(recordSet,
Collections.emptyMap(), false);
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getPath());
+ assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getTarget());
assertNotNull(writeResult);
assertEquals(1, writeResult.getRecordCount());
@@ -317,7 +329,7 @@ public class ZendeskRecordSinkTest {
" }\n" +
"}";
- assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
}
@Test
@@ -326,14 +338,17 @@ public class ZendeskRecordSinkTest {
testRunner.assertValid(sinkZendeskTicket);
testRunner.enableControllerService(sinkZendeskTicket);
- server.enqueue(new
MockResponse().setResponseCode(HTTP_OK).setBody(EMPTY_RESPONSE));
+ server.enqueue(new MockResponse.Builder()
+ .code(HTTP_OK)
+ .body(EMPTY_RESPONSE)
+ .build());
initDuplicateRecords();
WriteResult writeResult = sinkZendeskTicket.sendData(recordSet,
Collections.emptyMap(), false);
// then
RecordedRequest recordedRequest = server.takeRequest();
- assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getPath());
+ assertEquals(ZENDESK_CREATE_TICKET_RESOURCE,
recordedRequest.getTarget());
assertNotNull(writeResult);
assertEquals(1, writeResult.getRecordCount());
@@ -348,7 +363,7 @@ public class ZendeskRecordSinkTest {
" }\n" +
"}";
- assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().inputStream()));
+ assertEquals(OBJECT_MAPPER.readTree(expectedBody),
OBJECT_MAPPER.readTree(recordedRequest.getBody().toByteArray()));
}
class TestZendeskRecordSink extends ZendeskRecordSink {
diff --git
a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/pom.xml
b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/pom.xml
index e8d87efacb..737532e2d2 100644
--- a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/pom.xml
+++ b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/pom.xml
@@ -315,7 +315,7 @@
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
- <artifactId>mockwebserver</artifactId>
+ <artifactId>mockwebserver3</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git
a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/test/java/org/apache/nifi/web/security/saml2/registration/StandardRegistrationBuilderProviderTest.java
b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/test/java/org/apache/nifi/web/security/saml2/registration/StandardRegistrationBuilderProviderTest.java
index bf12ae313f..5cd5532a85 100644
---
a/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/test/java/org/apache/nifi/web/security/saml2/registration/StandardRegistrationBuilderProviderTest.java
+++
b/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-security/src/test/java/org/apache/nifi/web/security/saml2/registration/StandardRegistrationBuilderProviderTest.java
@@ -16,9 +16,9 @@
*/
package org.apache.nifi.web.security.saml2.registration;
+import mockwebserver3.MockResponse;
+import mockwebserver3.MockWebServer;
import okhttp3.HttpUrl;
-import okhttp3.mockwebserver.MockResponse;
-import okhttp3.mockwebserver.MockWebServer;
import org.apache.commons.io.IOUtils;
import org.apache.nifi.security.cert.builder.StandardCertificateBuilder;
import org.apache.nifi.security.ssl.EphemeralKeyStoreBuilder;
@@ -38,6 +38,7 @@ import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.X509KeyManager;
import javax.net.ssl.X509TrustManager;
import javax.security.auth.x500.X500Principal;
+
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
@@ -63,8 +64,6 @@ class StandardRegistrationBuilderProviderTest {
private static final int HTTP_NOT_FOUND = 404;
- private static final boolean PROXY_DISABLED = false;
-
private MockWebServer mockWebServer;
@BeforeEach
@@ -75,7 +74,7 @@ class StandardRegistrationBuilderProviderTest {
@AfterEach
void shutdownServer() throws IOException {
- mockWebServer.shutdown();
+ mockWebServer.close();
}
@Test
@@ -88,7 +87,9 @@ class StandardRegistrationBuilderProviderTest {
@Test
void testGetRegistrationBuilderHttpUrl() throws IOException {
final String metadata = getMetadata();
- final MockResponse response = new MockResponse().setBody(metadata);
+ final MockResponse response = new MockResponse.Builder()
+ .body(metadata)
+ .build();
mockWebServer.enqueue(response);
final String metadataUrl = getMetadataUrl();
@@ -99,7 +100,9 @@ class StandardRegistrationBuilderProviderTest {
@Test
void testGetRegistrationBuilderHttpUrlNotFound() {
- final MockResponse response = new
MockResponse().setResponseCode(HTTP_NOT_FOUND);
+ final MockResponse response = new MockResponse.Builder()
+ .code(HTTP_NOT_FOUND)
+ .build();
mockWebServer.enqueue(response);
final String metadataUrl = getMetadataUrl();
@@ -128,10 +131,12 @@ class StandardRegistrationBuilderProviderTest {
.build();
final SSLSocketFactory sslSocketFactory =
Objects.requireNonNull(sslContext.getSocketFactory());
- mockWebServer.useHttps(sslSocketFactory, PROXY_DISABLED);
+ mockWebServer.useHttps(sslSocketFactory);
final String metadata = getMetadata();
- final MockResponse response = new MockResponse().setBody(metadata);
+ final MockResponse response = new MockResponse.Builder()
+ .body(metadata)
+ .build();
mockWebServer.enqueue(response);
final String metadataUrl = getMetadataUrl();
diff --git a/pom.xml b/pom.xml
index 78413931f2..75b1f3ab0a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -114,7 +114,7 @@
<gson.version>2.13.1</gson.version>
<io.fabric8.kubernetes.client.version>7.3.1</io.fabric8.kubernetes.client.version>
<kotlin.version>2.2.0</kotlin.version>
- <okhttp.version>4.12.0</okhttp.version>
+ <okhttp.version>5.0.0</okhttp.version>
<okio.version>3.15.0</okio.version>
<org.apache.commons.cli.version>1.9.0</org.apache.commons.cli.version>
<org.apache.commons.codec.version>1.18.0</org.apache.commons.codec.version>
@@ -494,6 +494,11 @@
<scope>import</scope>
<type>pom</type>
</dependency>
+ <dependency>
+ <groupId>com.squareup.okhttp3</groupId>
+ <artifactId>okhttp-jvm</artifactId>
+ <version>${okhttp.version}</version>
+ </dependency>
<dependency>
<groupId>com.squareup.okio</groupId>
<artifactId>okio</artifactId>