package proto.bdaccess; import static org.junit.Assert.assertEquals; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.easysoa.registry.types.Endpoint; import org.easysoa.registry.types.InformationService; import org.easysoa.registry.types.ids.SoaNodeId; import org.junit.Test; import org.ow2.jasmine.event.beans.JasmineEventEB; public class AdapterServiceRestTest { @Test public void easysoaRestTest() throws Exception{ // demo setup //String pivotalHost = "localhost"; //String apvHost = "localhost"; //String registryHost = "localhost"; String pivotalHost = "owsi-vm-easysoa-axxx-pivotal.accelance.net"; String apvHost = "owsi-vm-easysoa-axxx-pivotal.accelance.net"; String registryHost = "owsi-vm-easysoa-axxx-registry.accelance.net"; String deploiementSubprojectId = "/default-domain/Intégration DPS - DCV/Deploiement_v"; SoaNodeId tdrWebServiceProdEndpointSoaId = new SoaNodeId(deploiementSubprojectId, Endpoint.DOCTYPE, "Prod:http://" + apvHost + ":7080/apv/services/PrecomptePartenaireService");//TODO host SoaNodeId checkAddressProdEndpointSoaId = new SoaNodeId(deploiementSubprojectId, Endpoint.DOCTYPE, "Prod:" + fromEnc("iuuq;00xxx/ebub.rvbmjuz.tfswjdf/dpn0npdlxtr5220tfswjdft0JoufsobujpobmQptubmWbmjebujpo/JoufsobujpobmQptubmWbmjebujpoIuuqTpbq22Foeqpjou0"));//checkAddressProdEndpoint SoaNodeId informationAPVProdEndpointSoaId = new SoaNodeId(deploiementSubprojectId, Endpoint.DOCTYPE, "Prod:http://" + pivotalHost + ":7080/WS/ContactSvc.asmx");//TODO host // 18000 // conf ExportREST exportREST = new ExportREST(); //exportREST.setPassword("s0a"); // on VM // init exportREST.initClients("http://" + registryHost + ":8080/nuxeo/site", "Administrator", "s0a"); ///String tdrWebServiceProdEndpointNuxeoId = exportREST.getIdRef(tdrWebServiceProdEndpointSoaId); // alternative, does not work in jasmine /*String tdrWebServiceProdEndpointNuxeoId = exportREST.getRegistryApi().get( tdrWebServiceProdEndpointSoaId.getSubprojectId(), tdrWebServiceProdEndpointSoaId.getType(), tdrWebServiceProdEndpointSoaId.getName()).getUuid();*/// alternative String serviceNameFromJsonConf = "PrecomptePartenaireService"; String tdrWebServiceProdEndpointNuxeoId = exportREST.getRegistryApi().query( tdrWebServiceProdEndpointSoaId.getSubprojectId(), //"select * from Endpoint where serviceimpl:providedInformationService='" "SELECT * FROM Endpoint WHERE endp:url LIKE '%" + serviceNameFromJsonConf + "%'")[0].getUuid(); // data Date dateFrom = new Date(0); Date dateTo = new Date(); // now String endPointId = tdrWebServiceProdEndpointNuxeoId; String slaOrOlaName = "SLA Dde_Cré_Précompte"; String level = "silver"; boolean res = exportREST.exportData(dateFrom, dateTo, endPointId, slaOrOlaName, level); assertEquals(true, res); } @Test public void calculIndicatorsTest() throws ParseException{ List<BusinessSLA>businessSLA = new ArrayList<BusinessSLA>(); BusinessSLA temp = new BusinessSLA(70, 70, 70, new HoursPeriod(0, 1440), new HoursPeriod(420, 1320), new HoursPeriod(600, 1080), "smarttravel.com", "booktrip", "slaName"); businessSLA.add(temp); AdapterService adapt= new AdapterService(businessSLA); SimpleDateFormat formate = new SimpleDateFormat("yyyy-MM-dd_HH:mm"); Date date=formate.parse("2012-07-01_12:00"); JasmineEventEB e=new JasmineEventEB("qos-event", "", "", "misc:type=unknown:qosevent.smarttravel.com.booktrip.ResponseTime", "43",date, ""); JasmineEventEB[] events=new JasmineEventEB[1]; events[0]=e; String res=adapt.calculIndicators(events); assertEquals(res,"booktrip@smarttravel.com is GOLD level\n"); // REST call : adapt.calculAndExportIndicatorsFromTo(); } protected static String toEnc(String s) { char[] sChars = s.toCharArray(); for (int i = 0; i < sChars.length ; i++) { sChars[i] = (char) ((sChars[i] + 1) % 256); } return new String(sChars); } protected static String fromEnc(String s) { char[] sChars = s.toCharArray(); for (int i = 0; i < sChars.length ; i++) { sChars[i] = (char) ((sChars[i] - 1) % 256); } return new String(sChars); } }