Skip to content
Snippets Groups Projects
Commit 79fcf3bf authored by Harshika Dhoot's avatar Harshika Dhoot
Browse files

Merge branch 'users/preetisingh/nettyUpgrade' into 'master'

adding logs, upgrading neety version in azure, increasing connecttimeout.

See merge request !303
parents 14c320bd 1c1c70cd
No related branches found
No related tags found
1 merge request!303adding logs, upgrading neety version in azure, increasing connecttimeout.
Pipeline #152216 passed with warnings
......@@ -48,31 +48,33 @@
<dependency>
<groupId>org.opengroup.osdu</groupId>
<artifactId>core-lib-azure</artifactId>
<version>0.0.22</version>
<version>0.12.0-rc10</version>
<exclusions>
<exclusion>
<groupId>io.projectreactor</groupId>
<artifactId>reactor-core</artifactId>
</exclusion>
<exclusion>
<groupId>com.azure</groupId>
<artifactId>azure-storage-blob</artifactId>
</exclusion>
<exclusion>
<groupId>io.projectreactor.netty</groupId>
<artifactId>reactor-netty</artifactId>
<groupId>com.azure</groupId>
<artifactId>azure-core-http-netty</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.projectreactor</groupId>
<artifactId>reactor-core</artifactId>
<version>3.3.5.RELEASE</version>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
<version>4.1.50.Final</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-transport</artifactId>
<version>4.1.15.Final</version>
</dependency>
<dependency>
<groupId>io.projectreactor.netty</groupId>
<artifactId>reactor-netty</artifactId>
<version>0.9.7.RELEASE</version>
<groupId>com.azure</groupId>
<artifactId>azure-core-http-netty</artifactId>
<version>1.2.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
......
......@@ -32,12 +32,14 @@ import org.opengroup.osdu.notification.util.*;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.logging.Logger;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
public class TestStorageIntegration extends BaseTestTemplate {
Logger logger= Logger.getLogger("");
private String subscriptionId = null;
private String notificationId = null;
private final String ackSubscriptionId = "AckSubscription";
......@@ -86,6 +88,7 @@ public class TestStorageIntegration extends BaseTestTemplate {
headers.put(DpsHeaders.AUTHORIZATION, testUtils.getOpsToken());
DpsHeaders dpsHeaders = DpsHeaders.createFromMap(headers);
subscriptionService = factory.create(dpsHeaders);
logger.info("dps headers created.");
// Create a new subscription
Subscription subscription = new Subscription();
......@@ -105,6 +108,7 @@ public class TestStorageIntegration extends BaseTestTemplate {
System.out.println("Subscription exception inner response : " + e.getHttpResponse());
throw e;
}
logger.info("New subscription created");
}
private void deleteAckSubscription() throws SubscriptionException {
......@@ -141,19 +145,26 @@ public class TestStorageIntegration extends BaseTestTemplate {
try {
// Creates an actual subscription with a test endpoint i.e REGISTER_CUSTOM_PUSH_URL_HMAC
this.createResource();
logger.info("Actual subscription with a test endpoint created successfully");
// Delay to get the above subscription registered by Notification Service
TimeUnit.SECONDS.sleep(60);
logger.info("Subscription registered by Notification service successfully");
// Delete the Test Ack subscription if there exists any as a part of cleanup.
// The Test Ack Subscription gets created if the the test endpoint of actual subscription
// created above receives notification from Notification Service.
this.deleteAckSubscription();
// Delete legal tag
logger.info("Cleaning up previous Legal Tag if any. ");
LegalTagUtils.delete(LEGAL_TAG, this.testUtils.getAdminToken());
// Create legal tag used in storage record
logger.info("Creating New legal tag");
LegalTagUtils.create(LEGAL_TAG, this.testUtils.getAdminToken());
// Insert a storage Record.This will send a notification to the event grid/service bus topic
// subscriptions.From there it goes to the Notification Service.Finally from there it goes to the
// test endpoint i.e REGISTER_CUSTOM_PUSH_URL_HMAC which creates the Test ack Subscription.
......@@ -172,21 +183,25 @@ public class TestStorageIntegration extends BaseTestTemplate {
while (ackSubscription == null && retryCount > 0) {
TimeUnit.SECONDS.sleep(timeOut);
ackSubscription = subscriptionService.get(ackSubscriptionId);
logger.info("Retry time: "+retryCount+" to get Test Ack subscription.");
retryCount--;
}
Assertions.assertNotNull(ackSubscription, "Unable to retrieve test ack subscription. Elapsed time in minutes : " + (stopWatch.getTime(TimeUnit.MINUTES)));
if (ackSubscription != null) {
assertEquals("Unexpected Test Ack Subscription.", ackNotificationId, ackSubscription.getNotificationId());
}
logger.info("IT run successful");
stopWatch.stop();
} catch (Exception e) {
fail("An exception occurred :" + e);
} finally {
logger.info("Executing finally block");
// Delete Actual Subscription
this.deleteResource();
// Deletion of Test Ack Subscription
this.deleteAckSubscription();
// Delete legal tag
logger.info("Deleting legal tag");
LegalTagUtils.delete(LEGAL_TAG, this.testUtils.getAdminToken());
}
......
......@@ -22,6 +22,7 @@ import java.net.URL;
import java.security.SecureRandom;
import java.security.cert.X509Certificate;
import java.util.*;
import java.util.logging.Logger;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
......@@ -35,6 +36,7 @@ import com.sun.jersey.api.client.ClientResponse;
import com.sun.jersey.api.client.WebResource;
public abstract class TestUtils {
static Logger logger = Logger.getLogger("");
protected String serviceAccountFile;
protected static String opsToken = null;
protected static String adminToken = null;
......@@ -75,47 +77,58 @@ public abstract class TestUtils {
public static ClientResponse send(String path, String httpMethod, String token, String requestBody, String query,
Map<String, String> headers, boolean enforceHttp)
throws Exception {
Client client = getClient();
client.setConnectTimeout(50000);
client.setReadTimeout(50000);
client.setFollowRedirects(false);
String url = getApiPath(path + query, enforceHttp);
System.out.println(url);
System.out.println(httpMethod);
System.out.println(requestBody);
System.out.println(headers);
WebResource webResource = client.resource(url);
final WebResource.Builder builder = webResource.type(MediaType.APPLICATION_JSON)
.header("Authorization", token);
headers.forEach((k, v) -> builder.header(k, v));
ClientResponse response = builder.method(httpMethod, ClientResponse.class, requestBody);
ClientResponse response;
try {
Client client = getClient();
client.setConnectTimeout(300000);
client.setReadTimeout(50000);
client.setFollowRedirects(false);
String url = getApiPath(path + query, enforceHttp);
System.out.println(url);
System.out.println(httpMethod);
System.out.println(requestBody);
System.out.println(headers);
WebResource webResource = client.resource(url);
final WebResource.Builder builder = webResource.type(MediaType.APPLICATION_JSON)
.header("Authorization", token);
headers.forEach((k, v) -> builder.header(k, v));
response = builder.method(httpMethod, ClientResponse.class, requestBody);
} catch (Exception e) {
e.printStackTrace();
throw new AssertionError("Error: Send request error", e);
}
logger.info("waiting on response");
return response;
}
public static ClientResponse send(String url, String path, String httpMethod, String token, String requestBody,
String query, Map<String, String> headers, boolean enforceHttp)
throws Exception {
Client client = getClient();
client.setConnectTimeout(50000);
client.setReadTimeout(50000);
client.setFollowRedirects(false);
String URL = getApiPath(url, path + query, enforceHttp);
System.out.println(url + path);
System.out.println(httpMethod);
System.out.println(requestBody);
System.out.println(headers);
WebResource webResource = client.resource(URL);
final WebResource.Builder builder = webResource.type(MediaType.APPLICATION_JSON);
if (!token.isEmpty()) {
builder.header("Authorization", token);
ClientResponse response;
try {
Client client = getClient();
client.setConnectTimeout(300000);
client.setReadTimeout(50000);
client.setFollowRedirects(false);
String URL = getApiPath(url, path + query, enforceHttp);
System.out.println(url + path);
System.out.println(httpMethod);
System.out.println(requestBody);
System.out.println(headers);
WebResource webResource = client.resource(URL);
final WebResource.Builder builder = webResource.type(MediaType.APPLICATION_JSON);
if (!token.isEmpty()) {
logger.info("Token is not empty so adding to request header");
builder.header("Authorization", token);
}
headers.forEach((k, v) -> builder.header(k, v));
response = builder.method(httpMethod, ClientResponse.class, requestBody);
} catch (Exception e) {
e.printStackTrace();
throw new AssertionError("Error: Send request error", e);
}
headers.forEach((k, v) -> builder.header(k, v));
ClientResponse response = builder.method(httpMethod, ClientResponse.class, requestBody);
logger.info("waiting on response");
return response;
}
......@@ -159,8 +172,9 @@ public abstract class TestUtils {
sc.init(null, trustAllCerts, new SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
} catch (Exception e) {
logger.info("Exception occurred");
}
logger.info("Creating client");
return Client.create();
}
}
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment