String store = props.getProperty(Main.KEYSTORE_PATH_PROPERTY);
String pass = props.getProperty(Main.KEYSTORE_PASSWORD_PROPERTY);
KeyStore keyStore = KeyStore.getInstance(type);
- FileInputStream instream = new FileInputStream(new File(store));
- keyStore.load(instream, pass.toCharArray());
- instream.close();
-
- store = props.getProperty(Main.TRUSTSTORE_PATH_PROPERTY);
- pass = props.getProperty(Main.TRUSTSTORE_PASSWORD_PROPERTY);
- KeyStore trustStore = null;
- if (store != null && store.length() > 0) {
- trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
- instream = new FileInputStream(new File(store));
- trustStore.load(instream, pass.toCharArray());
- instream.close();
+ try(FileInputStream instream = new FileInputStream(new File(store))) {
+ keyStore.load(instream, pass.toCharArray());
+
}
+ store = props.getProperty(Main.TRUSTSTORE_PATH_PROPERTY);
+ pass = props.getProperty(Main.TRUSTSTORE_PASSWORD_PROPERTY);
+ KeyStore trustStore = null;
+ if (store != null && store.length() > 0) {
+ trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
+ try(FileInputStream instream = new FileInputStream(new File(store))){
+ trustStore.load(instream, pass.toCharArray());
+
+ }
+ }
// We are connecting with the node name, but the certificate will have the CNAME
// So we need to accept a non-matching certificate name
String keystorepass = props.getProperty(
Main.KEYSTORE_PASSWORD_PROPERTY); //itrack.web.att.com/browse/DATARTR-6 for changing hard coded passphase ref
- AbstractHttpClient hc = new DefaultHttpClient();
- SSLSocketFactory socketFactory =
- (trustStore == null)
- ? new SSLSocketFactory(keyStore, keystorepass)
- : new SSLSocketFactory(keyStore, keystorepass, trustStore);
- socketFactory.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
- Scheme sch = new Scheme("https", 443, socketFactory);
- hc.getConnectionManager().getSchemeRegistry().register(sch);
+ try(AbstractHttpClient hc = new DefaultHttpClient()) {
+ SSLSocketFactory socketFactory =
+ (trustStore == null)
+ ? new SSLSocketFactory(keyStore, keystorepass)
+ : new SSLSocketFactory(keyStore, keystorepass, trustStore);
+ socketFactory.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
+ Scheme sch = new Scheme("https", 443, socketFactory);
+ hc.getConnectionManager().getSchemeRegistry().register(sch);
httpclient = hc;
-
+ }
// Run once every 5 seconds to check DNS, etc.
long interval = 0;
try {
import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.AfterClass;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
-import org.onap.dmaap.datarouter.provisioning.beans.Subscription;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.SuppressStaticInitializationFor;
import org.powermock.modules.junit4.PowerMockRunner;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.persistence.EntityManager;
+import javax.persistence.EntityManagerFactory;
+import javax.persistence.Persistence;
import static org.hamcrest.CoreMatchers.notNullValue;
-import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.argThat;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.powermock.api.mockito.PowerMockito.when;
+
@RunWith(PowerMockRunner.class)
-@SuppressStaticInitializationFor({"org.onap.dmaap.datarouter.provisioning.beans.Subscription"})
public class LogServletTest extends DrServletTestBase {
+ private static EntityManagerFactory emf;
+ private static EntityManager em;
private static LogServlet logServlet;
@Mock
@Mock
private HttpServletResponse response;
+ @BeforeClass
+ public static void init() {
+ emf = Persistence.createEntityManagerFactory("dr-unit-tests");
+ em = emf.createEntityManager();
+ System.setProperty(
+ "org.onap.dmaap.datarouter.provserver.properties",
+ "src/test/resources/h2Database.properties");
+ }
+
+ @AfterClass
+ public static void tearDownClass() {
+ em.clear();
+ em.close();
+ emf.close();
+ }
+
@Before
public void setUp() throws Exception {
- super.setUp();
logServlet = new LogServlet(true);
setUpValidParameterValuesForMap();
}
}
@Test
- public void Given_Request_Is_HTTP_GET_And_Has_Bad_Type()
+ public void Given_Request_Is_HTTP_GET_And_Has_Bad_Type_Then_Bad_Request_Response_Is_Generated()
throws Exception {
when(request.getParameter("type")).thenReturn("bad_type");
logServlet.doGet(request, response);
}
@Test
- public void Given_Request_Is_HTTP_GET_And_Has_Bad_PublishID()
+ public void Given_Request_Is_HTTP_GET_And_Has_Bad_PublishID_Then_Bad_Request_Response_Is_Generated()
throws Exception {
when(request.getParameter("publishId")).thenReturn("bad_PublishID'");
logServlet.doGet(request, response);
}
@Test
- public void Given_Request_Is_HTTP_GET_And_Has_Bad_StatusCode()
+ public void Given_Request_Is_HTTP_GET_And_Has_Bad_StatusCode_Then_Bad_Request_Response_Is_Generated()
throws Exception {
when(request.getParameter("statusCode")).thenReturn("1'");
logServlet.doGet(request, response);
}
@Test
- public void Given_Request_Is_HTTP_GET_And_Is_FeedLog()
+ public void Given_Request_Is_HTTP_GET_And_Is_FeedLog_A_STATUS_OK_Response_Is_Generated()
throws Exception {
logServlet.doGet(request, response);
verify(response).setStatus(eq(HttpServletResponse.SC_OK));
}
- @Test
- public void Given_Request_Is_HTTP_GET_And_Is_Not_FeedLog()
- throws Exception {
- LogServlet logServletNotFeedlog = new LogServlet(false);
- PowerMockito.mockStatic(Subscription.class);
- PowerMockito.when(Subscription.getSubscriptionById(anyInt())).thenReturn(mock(Subscription.class));
- logServletNotFeedlog.doGet(request, response);
- verify(response).setStatus(eq(HttpServletResponse.SC_OK));
- }
-
@Test
public void Given_Request_Is_HTTP_PUT_And_Is_Not_Allowed_Then_Forbidden_Response_Is_Generated()
throws Exception {
}
@Test
- public void Given_Request_Is_GetPublishRecordsForFeed_And_Type_Is_Publish()
+ public void Given_Request_Is_GetPublishRecordsForFeed_And_Type_Is_Publish_A_STATUS_OK_Response_Is_Generated()
throws Exception {
when(request.getParameter("type")).thenReturn("pub");
when(request.getParameter("expiryReason")).thenReturn(null);
}
@Test
- public void Given_Request_Is_getDeliveryRecordsForFeed_And_Type_Is_Delivery()
+ public void Given_Request_Is_getDeliveryRecordsForFeed_And_Type_Is_Delivery_A_STATUS_OK_Response_Is_Generated()
throws Exception {
when(request.getParameter("type")).thenReturn("del");
when(request.getParameter("expiryReason")).thenReturn(null);
}
@Test
- public void Given_Request_Is_getExpiryRecordsForFeed_And_Type_Is_Expire()
+ public void Given_Request_Is_getExpiryRecordsForFeed_And_Type_Is_Expire_A_STATUS_OK_Response_Is_Generated()
throws Exception {
when(request.getParameter("type")).thenReturn("exp");
when(request.getParameter("statusCode")).thenReturn(null);
}
@Test
- public void Given_Request_Is_getDeliveryRecordsForSubscription_And_Type_Is_Delivery()
+ public void Given_Request_Is_getDeliveryRecordsForSubscription_And_Type_Is_Delivery_A_STATUS_OK_Response_Is_Generated()
throws Exception {
LogServlet logServletNotFeedlog = new LogServlet(false);
when(request.getParameter("type")).thenReturn("del");
when(request.getParameter("statusCode")).thenReturn(null);
when(request.getParameter("expiryReason")).thenReturn(null);
- PowerMockito.mockStatic(Subscription.class);
- PowerMockito.when(Subscription.getSubscriptionById(anyInt())).thenReturn(mock(Subscription.class));
logServletNotFeedlog.doGet(request, response);
verify(response).setStatus(eq(HttpServletResponse.SC_OK));
}
@Test
- public void Given_Request_Is_getExpiryRecordsForSubscription_And_Type_Is_Expiry()
+ public void Given_Request_Is_getExpiryRecordsForSubscription_And_Type_Is_Expiry_A_STATUS_OK_Response_Is_Generated()
throws Exception {
LogServlet logServletNotFeedlog = new LogServlet(false);
when(request.getParameter("type")).thenReturn("exp");
when(request.getParameter("statusCode")).thenReturn(null);
when(request.getParameter("expiryReason")).thenReturn(null);
- PowerMockito.mockStatic(Subscription.class);
- PowerMockito.when(Subscription.getSubscriptionById(anyInt())).thenReturn(mock(Subscription.class));
logServletNotFeedlog.doGet(request, response);
verify(response).setStatus(eq(HttpServletResponse.SC_OK));
}