Merge branch 'master' into #22686

# Conflicts:
#	geoportal-client/src/test/java/org/gcube/application/geoportal/clients/legacy/StatelessClientTests.java
This commit is contained in:
Fabio Sinibaldi 2022-05-27 16:31:27 +02:00
commit 610f255dcd
2 changed files with 59 additions and 40 deletions

View File

@ -80,7 +80,7 @@ public class ConcessioniUtils {
copied.getPianteFineScavo().add(clean(src.getPianteFineScavo().get(i)));
copied=client.replace(copied);
req=asCopyRequest(src.getPianteFineScavo().get(i),storage);
req.setDestinationPath(Concessione.Paths.imgByIndex(i));
req.setDestinationPath(Concessione.Paths.piantaByIndex(i));
if(req.getStreams()!=null&&!req.getStreams().isEmpty())
copied=client.registerFileSet(copied.getMongo_id(),req);
}

View File

@ -1,44 +1,48 @@
package org.gcube.application.geoportal.clients.legacy;
package org.gcube.application.geoportal.clients;
import static org.gcube.application.geoportal.client.GeoportalAbstractPlugin.mongoConcessioni;
import static org.junit.Assert.*;
import static org.junit.Assume.assumeTrue;
import java.io.File;
import java.io.FileInputStream;
import java.nio.charset.Charset;
import java.util.Collections;
import java.util.Iterator;
import java.util.concurrent.atomic.AtomicLong;
import java.util.stream.Collectors;
import com.sun.corba.se.spi.orbutil.threadpool.Work;
import org.bson.Document;
import org.gcube.application.cms.tests.model.concessioni.TestConcessioniFilters;
import org.gcube.application.cms.tests.model.concessioni.TestConcessioniModel;
import org.gcube.application.cms.tests.model.concessioni.TestConcessioniQueries;
import org.gcube.application.geoportal.client.utils.ConcessioniUtils;
import org.gcube.application.geoportal.client.utils.Queries;
import org.gcube.application.geoportal.client.utils.Serialization;
import org.gcube.application.geoportal.clients.BasicVreTests;
import org.gcube.application.geoportal.common.model.legacy.*;
import org.gcube.application.geoportal.common.model.legacy.Concessione.Paths;
import org.gcube.application.geoportal.common.model.legacy.report.ValidationReport.ValidationStatus;
import org.gcube.application.geoportal.common.model.rest.AddSectionToConcessioneRequest;
import org.gcube.application.geoportal.common.model.rest.QueryRequest;
import org.gcube.application.geoportal.common.rest.MongoConcessioni;
import org.gcube.application.geoportal.common.utils.FileSets;
import org.gcube.application.geoportal.common.utils.Files;
import org.gcube.application.geoportal.common.utils.StorageUtils;
import org.gcube.application.geoportal.common.utils.tests.GCubeTest;
import org.junit.Test;
import java.io.File;
import java.util.Iterator;
import java.util.concurrent.atomic.AtomicLong;
import static org.gcube.application.geoportal.client.plugins.GeoportalAbstractPlugin.mongoConcessioni;
import static org.junit.Assert.*;
import static org.junit.Assume.assumeTrue;
public class StatelessClientTests extends BasicVreTests {
public class StatelessClientTests extends BasicVreTests{
private final MongoConcessioni client=mongoConcessioni().build();
private MongoConcessioni client=mongoConcessioni().build();
@Test
public void getConfiguration() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
System.out.println(client.getCurrentConfiguration());
}
@Test
public void searches() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
TestConcessioniFilters.filters.forEach((k, v)->{
try {
System.out.println("Count for " + k + "\t" + count(client.search(v)));
@ -53,7 +57,7 @@ public class StatelessClientTests extends BasicVreTests {
@Test
public void query() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
System.out.println("FRA "+ count(client.query(
Queries.parse(TestConcessioniQueries.queries.get("emptyresult.json")))));
@ -91,7 +95,6 @@ public class StatelessClientTests extends BasicVreTests {
@Test
public void testList() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
final AtomicLong counter=new AtomicLong();
long before=System.currentTimeMillis();
client.getList().forEachRemaining((Concessione c)-> {counter.addAndGet(1);});
@ -100,7 +103,6 @@ public class StatelessClientTests extends BasicVreTests {
@Test
public void testCreateNew() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
Concessione c= client.createNew(TestConcessioniModel.prepareEmptyConcessione());
assertNotNull(c);
assertNotNull(c.getMongo_id());
@ -113,16 +115,44 @@ public class StatelessClientTests extends BasicVreTests {
Concessione c= prepare();
Concessione copied = ConcessioniUtils.clone(client,c.getMongo_id());
assertEquals(copied.getNome(),c.getNome());
checkCopied(copied.getRelazioneScavo(),c.getRelazioneScavo());
checkCopied(copied.getAbstractRelazione(),c.getAbstractRelazione());
checkCopied(copied.getPosizionamentoScavo(),c.getPosizionamentoScavo());
assertEquals(copied.getPianteFineScavo().size(),c.getPianteFineScavo().size());
for(int i=0;i<c.getPianteFineScavo().size();i++)
checkCopied(copied.getPianteFineScavo().get(i),c.getPianteFineScavo().get(i));
assertEquals(copied.getImmaginiRappresentative().size(),c.getImmaginiRappresentative().size());
for(int i=0;i<c.getImmaginiRappresentative().size();i++)
checkCopied(copied.getImmaginiRappresentative().get(i),c.getImmaginiRappresentative().get(i));
}
private static void checkCopied(AssociatedContent copied,AssociatedContent original){
assertEquals(copied.getPolicy(),original.getPolicy());
assertEquals(copied.getLicenseID(),original.getLicenseID());
assertEquals(copied.getTitolo(),original.getTitolo());
if(copied instanceof LayerConcessione){
assertNull(((LayerConcessione)copied).getLayerName());
assertNull(((LayerConcessione)copied).getLayerID());
assertNull(((LayerConcessione)copied).getLayerUUID());
assertNull(((LayerConcessione)copied).getWorkspace());
assertNull(((LayerConcessione)copied).getWmsLink());
}
if(original.getActualContent()!=null){
assertNotNull(copied.getActualContent());
// count only workspace content
int oriringalCount= original.getActualContent().stream().
filter(persistedContent -> persistedContent instanceof WorkspaceContent).
collect(Collectors.toList()).size();
assertEquals(copied.getActualContent().size(),oriringalCount);
}
}
@Test
public void testReplace() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
Concessione testObject= client.createNew(TestConcessioniModel.prepareEmptyConcessione());
String title="My new shiny Title";
testObject.setNome(title);
@ -132,14 +162,12 @@ public class StatelessClientTests extends BasicVreTests {
@Test
public void testUploadFileSet() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
Concessione testObject= client.createNew(TestConcessioniModel.prepareConcessione());
AddSectionToConcessioneRequest request=
Serialization.convert(
// FileSets.prepareRequest(new StorageUtils(),Paths.RELAZIONE,new File(TestConcessioniModel.getBaseFolder(),"relazione.pdf"));
FileSets.build(Paths.ABSTRACT_RELAZIONE,null,null).add(
FileSets.build(Paths.ABSTRACT_RELAZIONE).add(
new StorageUtils().putOntoStorage(new File(TestConcessioniModel.getBaseFolder(),"relazione.pdf"),"San Mauro_drone totale.JPG"))
.getTheRequest(),AddSectionToConcessioneRequest.class);
.getTheRequest();
testObject= client.registerFileSet(testObject.getMongo_id(), request);
@ -151,7 +179,6 @@ public class StatelessClientTests extends BasicVreTests {
@Test
public void testDeleteById() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
Concessione c= client.createNew(TestConcessioniModel.prepareEmptyConcessione());
client.deleteById(c.getMongo_id());
}
@ -159,7 +186,6 @@ public class StatelessClientTests extends BasicVreTests {
@Test
public void testPublish() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
Concessione c=prepare();
assertTrue(c.getReport().getStatus().equals(ValidationStatus.PASSED));
@ -169,7 +195,7 @@ public class StatelessClientTests extends BasicVreTests {
@Test
public void testCleanFileSet() throws Exception {
assumeTrue(GCubeTest.isTestInfrastructureEnabled());
Concessione testObject=prepare();
System.out.println("Object is "+testObject.getPosizionamentoScavo());
//Precheck to be sure
@ -210,37 +236,30 @@ public class StatelessClientTests extends BasicVreTests {
assertEquals(AccessPolicy.EMBARGOED,c.getRelazioneScavo().getPolicy());
c=client.registerFileSet(mongoId,
Serialization.convert(FileSets.prepareRequest(storage,Paths.RELAZIONE,null,null,
new File(TestConcessioniModel.getBaseFolder(),"relazione.pdf")), AddSectionToConcessioneRequest.class));
FileSets.prepareRequest(storage,Paths.RELAZIONE,new File(TestConcessioniModel.getBaseFolder(),"relazione.pdf")));
assertEquals(AccessPolicy.EMBARGOED,c.getRelazioneScavo().getPolicy());
c=client.registerFileSet(mongoId,
Serialization.convert(
FileSets.prepareRequest(storage,Paths.ABSTRACT_RELAZIONE,null, null, new File(TestConcessioniModel.getBaseFolder(),"relazione.pdf")),AddSectionToConcessioneRequest.class));
FileSets.prepareRequest(storage,Paths.ABSTRACT_RELAZIONE,new File(TestConcessioniModel.getBaseFolder(),"relazione.pdf")));
assertEquals(AccessPolicy.EMBARGOED,c.getRelazioneScavo().getPolicy());
for(int i=0;i<numImgs;i++)
c=client.registerFileSet(mongoId,
Serialization.convert(
FileSets.build(Paths.imgByIndex(i),null,null).
FileSets.build(Paths.imgByIndex(i)).
add(storage.putOntoStorage(new File(TestConcessioniModel.getBaseFolder(),"immagine"+(i+1)+".png"),
i+"San Mauro_drone totale.JPG")).getTheRequest(),AddSectionToConcessioneRequest.class));
i+"San Mauro_drone totale.JPG")).getTheRequest());
assertEquals(AccessPolicy.EMBARGOED,c.getRelazioneScavo().getPolicy());
c=client.registerFileSet(mongoId,
Serialization.convert(
FileSets.prepareRequest(storage,Paths.POSIZIONAMENTO,null,null,new File(TestConcessioniModel.getBaseFolder(),
"pos.shp")),AddSectionToConcessioneRequest.class));
FileSets.prepareRequest(storage,Paths.POSIZIONAMENTO,new File(TestConcessioniModel.getBaseFolder(),"pos.shp")));
assertEquals(AccessPolicy.EMBARGOED,c.getRelazioneScavo().getPolicy());
c=client.registerFileSet(mongoId,
Serialization.convert(
FileSets.prepareRequest(storage,Paths.piantaByIndex(0),null,null,
new File(TestConcessioniModel.getBaseFolder(),"pianta.shp")),AddSectionToConcessioneRequest.class));
FileSets.prepareRequest(storage,Paths.piantaByIndex(0),new File(TestConcessioniModel.getBaseFolder(),"pianta.shp")));
assertEquals(AccessPolicy.EMBARGOED,c.getRelazioneScavo().getPolicy());