128 lines
4.4 KiB
Java
128 lines
4.4 KiB
Java
package org.gcube.application.geoportal.clients;
|
|
|
|
import static org.gcube.application.geoportal.client.GeoportalAbstractPlugin.statefulMongoConcessioni;
|
|
import static org.junit.Assert.*;
|
|
|
|
import java.io.File;
|
|
import java.io.FileInputStream;
|
|
import java.io.FileNotFoundException;
|
|
|
|
import org.gcube.application.cms.tests.model.TestModel;
|
|
import org.gcube.application.geoportal.client.legacy.ConcessioniManagerI;
|
|
import org.gcube.application.geoportal.client.utils.Serialization;
|
|
import org.gcube.application.geoportal.common.model.legacy.*;
|
|
import org.gcube.application.geoportal.common.model.legacy.report.ValidationReport.ValidationStatus;
|
|
import org.gcube.application.geoportal.common.rest.TempFile;
|
|
import org.gcube.application.geoportal.common.utils.Files;
|
|
import org.gcube.application.geoportal.common.utils.StorageUtils;
|
|
import org.gcube.contentmanagement.blobstorage.transport.backend.RemoteBackendException;
|
|
import org.junit.Test;
|
|
|
|
|
|
public class StatefulClientTests extends BasicVreTests{
|
|
|
|
|
|
|
|
private Concessione publishNew() throws Exception {
|
|
ConcessioniManagerI manager=statefulMongoConcessioni().build();
|
|
StorageUtils storage=new StorageUtils();
|
|
|
|
|
|
Concessione toRegister= TestModel.prepareEmptyConcessione();
|
|
toRegister.setNome("Mock module");
|
|
manager.createNew(toRegister);
|
|
|
|
|
|
|
|
|
|
Concessione source=TestModel.prepareConcessione();
|
|
|
|
|
|
UploadedImage toRegisterImg= source.getImmaginiRappresentative().get(0);
|
|
|
|
// TEMP Files are hosted in INFRASTRUCTURE's VOLATILE AREA
|
|
TempFile toUpload=storage.putOntoStorage(
|
|
new File(TestModel.getBaseFolder(),"immagine1.png"), "immagine.png");
|
|
|
|
manager.addImmagineRappresentativa(toRegisterImg, toUpload);
|
|
|
|
|
|
//Alternative Method
|
|
InputStreamDescriptor isDesc=
|
|
new InputStreamDescriptor(new FileInputStream(new File(TestModel.getBaseFolder(),
|
|
"immagine1.png")), "San Mauro_drone totale.JPG");
|
|
manager.addImmagineRappresentativa(toRegisterImg, isDesc);
|
|
|
|
source.getRelazioneScavo().setPolicy(AccessPolicy.EMBARGOED);
|
|
assertEquals(AccessPolicy.EMBARGOED,source.getRelazioneScavo().getPolicy());
|
|
|
|
//Relazione
|
|
manager.setRelazioneScavo(source.getRelazioneScavo(),
|
|
storage.putOntoStorage(new File(TestModel.getBaseFolder(),"relazione.pdf"), "relazione_it.pdf"),
|
|
storage.putOntoStorage(new File(TestModel.getBaseFolder(),"relazione.pdf"), "relazione_en.pdf"));
|
|
assertEquals(AccessPolicy.EMBARGOED,manager.getCurrent().getRelazioneScavo().getPolicy());
|
|
|
|
//Abstract
|
|
manager.setAbstractRelazioneScavo(
|
|
source.getAbstractRelazione(),
|
|
storage.putOntoStorage(new File(TestModel.getBaseFolder(),"relazione.pdf"), "abstract_relazione_it.pdf"),
|
|
storage.putOntoStorage(new File(TestModel.getBaseFolder(),"relazione.pdf"), "abstract_relazione_en.pdf"));
|
|
|
|
|
|
|
|
// Posizionamento scavo
|
|
|
|
manager.setPosizionamento(source.getPosizionamentoScavo(),
|
|
storage.putOntoStorage(
|
|
new File(TestModel.getBaseFolder(),"pos.shp"),"pos.shp"));
|
|
|
|
// Piante
|
|
manager.addPiantaFineScavo(source.getPianteFineScavo().get(0),
|
|
storage.putOntoStorage(
|
|
new File(TestModel.getBaseFolder(),"pianta.shp"),"pianta.shp"));
|
|
// new File("/Users/fabioisti/Documents/invio_08_05/Montalto di Castro (VT)_Vulci_Indagini non invasive_Doc. paragr._Va/CONSEGNA_WGS84")
|
|
// .listFiles((file,name)->{return name.startsWith("Mag_anomalies_WGS84");})));
|
|
|
|
|
|
|
|
Concessione toReturn=manager.publish();
|
|
assertEquals(AccessPolicy.EMBARGOED,toReturn.getRelazioneScavo().getPolicy());
|
|
return toReturn;
|
|
}
|
|
|
|
|
|
|
|
@Test
|
|
public void testRegisterNew() throws RemoteBackendException, FileNotFoundException, Exception {
|
|
Concessione published=publishNew();
|
|
|
|
|
|
// VARIOUS CHECKS
|
|
assertNotNull(published.getReport());
|
|
assertEquals(published.getReport().getStatus(),ValidationStatus.PASSED);
|
|
|
|
assertEquals(published.getImmaginiRappresentative().size(),2);
|
|
assertEquals(published.getPianteFineScavo().size(),1);
|
|
assertNotNull(published.getPosizionamentoScavo().getWmsLink());
|
|
for(LayerConcessione l : published.getPianteFineScavo())
|
|
assertNotNull(l.getWmsLink());
|
|
assertNotNull(published.getCentroidLat());
|
|
assertNotNull(published.getCentroidLong());
|
|
|
|
System.out.println(Serialization.write(published));
|
|
System.out.println(Serialization.write(published.getReport()));
|
|
}
|
|
|
|
@Test
|
|
public void delete() throws Exception {
|
|
ConcessioniManagerI manager=statefulMongoConcessioni().build();
|
|
StorageUtils storage=new StorageUtils();
|
|
|
|
manager.createNew(TestModel.prepareEmptyConcessione());
|
|
|
|
manager.delete();
|
|
}
|
|
|
|
|
|
}
|