* limitations under the License.
* ============LICENSE_END=========================================================
*/
+
package org.onap.aai.rest;
+import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertThat;
+import static org.junit.Assert.fail;
+
import com.att.eelf.configuration.EELFLogger;
import com.att.eelf.configuration.EELFManager;
+
+import java.util.List;
+import java.util.UUID;
+import java.util.concurrent.Callable;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
+import java.util.stream.IntStream;
+
+import javax.ws.rs.core.Response;
+
import org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversalSource;
import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.janusgraph.core.JanusGraph;
import org.onap.aai.dbmap.AAIGraph;
import org.onap.aai.serialization.engines.QueryStyle;
-import javax.ws.rs.core.Response;
-import java.util.List;
-import java.util.UUID;
-import java.util.concurrent.Callable;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import java.util.concurrent.TimeUnit;
-import java.util.stream.Collectors;
-import java.util.stream.IntStream;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.junit.Assert.assertThat;
-import static org.junit.Assert.fail;
-
public class PserverDuplicateTest extends AAISetup {
private static final EELFLogger LOGGER = EELFManager.getInstance().getLogger(PserverDuplicateTest.class);
hostname = getHostname();
final String aaiUri = "/cloud-infrastructure/pservers/pserver/" + hostname;
- final int threads = getNumberOfThreads();
+ final int threads = getNumberOfThreads();
ExecutorService service = Executors.newFixedThreadPool(threads);
// Due to the lazy instantiation of the graph, it needs to create a new transaction to create schema
janusGraph.newTransaction().rollback();
- service.invokeAll(
- IntStream.range(0, threads)
- .mapToObj((i) -> (Callable<Void>) () -> {
- JanusGraphTransaction transaction = janusGraph.newTransaction();
- GraphTraversalSource g = transaction.traversal();
- try {
- g.addV()
- .property(AAIProperties.AAI_URI, aaiUri)
- .property(AAIProperties.NODE_TYPE, "pserver")
- .property("hostname", hostname)
- .next();
- transaction.commit();
- } catch (Exception e) {
- throw new Exception("Duplicate was found, error");
- }
- return null;
- }).collect(Collectors.toList())
- , 7, TimeUnit.SECONDS
- );
+ service.invokeAll(IntStream.range(0, threads).mapToObj((i) -> (Callable<Void>) () -> {
+ JanusGraphTransaction transaction = janusGraph.newTransaction();
+ GraphTraversalSource g = transaction.traversal();
+ try {
+ g.addV().property(AAIProperties.AAI_URI, aaiUri).property(AAIProperties.NODE_TYPE, "pserver")
+ .property("hostname", hostname).next();
+ transaction.commit();
+ } catch (Exception e) {
+ throw new Exception("Duplicate was found, error");
+ }
+ return null;
+ }).collect(Collectors.toList()), 7, TimeUnit.SECONDS);
- JanusGraphTransaction readOnlyTransaction = AAIGraph.getInstance().getGraph().buildTransaction().readOnly().start();
+ JanusGraphTransaction readOnlyTransaction =
+ AAIGraph.getInstance().getGraph().buildTransaction().readOnly().start();
GraphTraversalSource g = readOnlyTransaction.traversal();
List<Vertex> pserverList = g.V().has(AAIProperties.AAI_URI, aaiUri).toList();
testUtil = new HttpTestUtil(QueryStyle.TRAVERSAL_URI);
- if(pserverList.size() == 1){
+ if (pserverList.size() == 1) {
return false;
}
return true;
}
-
@Ignore
public void testWhenDuplicatesExistInGraphThatGetAllSuceeds() throws InterruptedException {
int totalRetries = getNumOfRetries();
- for(int retry = 0; retry < totalRetries; retry++){
- if(!this.createDuplicate()){
- if(retry == (totalRetries-1)){
- fail("Unable to produce duplicates in the graph, " +
- "please increase retry or ignore test if it becomes impossible to create duplicate this test");
+ for (int retry = 0; retry < totalRetries; retry++) {
+ if (!this.createDuplicate()) {
+ if (retry == (totalRetries - 1)) {
+ fail("Unable to produce duplicates in the graph, "
+ + "please increase retry or ignore test if it becomes impossible to create duplicate this test");
}
} else {
// Successfully created a duplicate in the janus graph
String endpoint = "/aai/v14/cloud-infrastructure/pservers";
Response response = testUtil.doGet(endpoint, null);
- LOGGER.info("GET ALL Pservers with duplicates status code {} and body {}", response.getStatus(), response.getEntity());
+ LOGGER.info("GET ALL Pservers with duplicates status code {} and body {}", response.getStatus(),
+ response.getEntity());
assertThat(response.getStatus(), is(200));
}
- public String getHostname(){
+ public String getHostname() {
return UUID.randomUUID().toString();
}
- public int getNumOfRetries(){
+ public int getNumOfRetries() {
return 10;
}
- public int getNumberOfThreads(){
- return 10;
+ public int getNumberOfThreads() {
+ return 10;
}
}
-