gcube-cms-suite/geoportal-client/src/test/java/org/gcube/application/geoportal/clients/UCDTests.java

57 lines
1.8 KiB
Java

package org.gcube.application.geoportal.clients;
import org.bson.Document;
import org.gcube.application.geoportal.client.utils.Queries;
import org.gcube.application.geoportal.common.model.rest.QueryRequest;
import org.gcube.application.geoportal.common.rest.UseCaseDescriptorsI;
import org.gcube.application.geoportal.common.utils.tests.GCubeTest;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import java.util.concurrent.atomic.AtomicLong;
import static org.gcube.application.geoportal.client.plugins.GeoportalAbstractPlugin.useCaseDescriptors;
import static org.junit.Assume.assumeTrue;
public class UCDTests {
UseCaseDescriptorsI client =null;
@Before
public void getClient(){
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
client =useCaseDescriptors().build();
}
@Test
public void query() throws Exception {
QueryRequest request = new QueryRequest();
// All
AtomicLong counter = new AtomicLong(0l);
client.query(request).forEachRemaining(u ->counter.incrementAndGet());
// Filter by presence of handler Id
request.setFilter(Document.parse("{\"_handlers._id\" : {\"$eq\" : \"org.gcube....geoportal-data-entry-portlet\"}}"));
System.out.println("Count : "+counter.get());
}
@Test
public void getById() throws Exception {
UseCaseDescriptorsI client = useCaseDescriptors().build();
QueryRequest request = new QueryRequest();
// All
client.query(request).forEachRemaining(u -> {
try {
client.getById(u.getId());
} catch (Exception e) {
e.printStackTrace(System.err);
Assert.fail("Unable to get "+u.getId());
}
});
}
}