use of org.geotoolkit.sml.xml.v100.Keywords in project geotoolkit by Geomatys.
the class SmlXMLBindingTest method SystemUnmarshallMarshalingTest.
/**
* Test simple Record Marshalling.
*
* @throws java.lang.Exception
*/
@Test
public void SystemUnmarshallMarshalingTest() throws Exception {
Unmarshaller unmarshaller = SensorMLMarshallerPool.getInstance().acquireUnmarshaller();
InputStream is = SmlXMLBindingTest.class.getResourceAsStream("/org/geotoolkit/sml/system.xml");
Object unmarshalled = unmarshaller.unmarshal(is);
if (unmarshalled instanceof JAXBElement) {
unmarshalled = ((JAXBElement) unmarshalled).getValue();
}
assertTrue(unmarshalled instanceof SensorML);
SensorML result = (SensorML) unmarshalled;
Member member = new Member();
member.setRole("urn:x-ogx:def:sensor:OGC:detector");
SystemType system = new SystemType();
List<JAXBElement<String>> kw = new ArrayList<JAXBElement<String>>();
kw.add(sml100Factory.createKeywordsKeywordListKeyword("piezometer"));
kw.add(sml100Factory.createKeywordsKeywordListKeyword("geosciences"));
kw.add(sml100Factory.createKeywordsKeywordListKeyword("point d'eau"));
Keywords keywords = new Keywords(new KeywordList(URI.create("urn:x-brgm:def:gcmd:keywords"), kw));
system.setKeywords(keywords);
Classifier cl1 = new Classifier("intendedApplication", new Term("eaux souterraines", URI.create("urn:x-ogc:def:classifier:OGC:application")));
CodeSpacePropertyType cs = new CodeSpacePropertyType("urn:x-brgm:def:GeoPoint:bss");
Classifier cl2 = new Classifier("sensorType", new Term(cs, "piezometer", URI.create("urn:sensor:classifier:sensorType")));
CodeSpacePropertyType cs3 = new CodeSpacePropertyType("urn:x-sandre:def:mdo:identifier");
Classifier cl3 = new Classifier("waterBody", new Term(cs3, "FR6221", URI.create("urn:sensor:classifier:references")));
CodeSpacePropertyType cs4 = new CodeSpacePropertyType("urn:x-sandre:def:mdo:name");
Classifier cl4 = new Classifier("waterBody", new Term(cs4, "Multicouche pliocene et alluvions quaternaires du Roussillon", URI.create("urn:sensor:classifier:references")));
CodeSpacePropertyType cs5 = new CodeSpacePropertyType("urn:x-sandre:def:bdhrf:identifier");
Classifier cl5 = new Classifier("hydrologicalEntity", new Term(cs5, "225", URI.create("urn:sensor:classifier:references")));
CodeSpacePropertyType cs6 = new CodeSpacePropertyType("urn:x-sandre:def:bdhrf:name");
Classifier cl6 = new Classifier("hydrologicalEntity", new Term(cs6, "Pliocene du Roussillon", URI.create("urn:sensor:classifier:references")));
CodeSpacePropertyType cs7 = new CodeSpacePropertyType("urn:x-insee:def:commune:identifier");
Classifier cl7 = new Classifier("commune", new Term(cs7, "66008", URI.create("urn:sensor:classifier:references")));
CodeSpacePropertyType cs8 = new CodeSpacePropertyType("urn:x-insee:def:commune:name");
Classifier cl8 = new Classifier("commune", new Term(cs8, "ARGELES SUR MER", URI.create("urn:sensor:classifier:references")));
CodeSpacePropertyType cs9 = new CodeSpacePropertyType("urn:x-sandre:def:network:identifier");
Classifier cl9 = new Classifier("network", new Term(cs9, "600000221", URI.create("urn:sensor:classifier:references")));
CodeSpacePropertyType cs10 = new CodeSpacePropertyType("urn:x-sandre:def:network:identifier");
Classifier cl10 = new Classifier("network", new Term(cs10, "600000025", URI.create("urn:sensor:classifier:references")));
List<Classifier> cls = new ArrayList<Classifier>();
cls.add(cl1);
cls.add(cl2);
cls.add(cl3);
cls.add(cl4);
cls.add(cl5);
cls.add(cl6);
cls.add(cl7);
cls.add(cl8);
cls.add(cl9);
cls.add(cl10);
ClassifierList claList = new ClassifierList(null, cls);
Classification classification = new Classification(claList);
system.setClassification(classification);
List<Identifier> identifiers = new ArrayList<Identifier>();
cs = new CodeSpacePropertyType("urn:x-brgm:def:samplingStation:bss");
Identifier id1 = new Identifier("bssCode", new Term(cs, "10972X0137/PONT", URI.create("urn:x-ogc:def:identifier:OGC:modelNumber")));
cs = new CodeSpacePropertyType("urn:x-brgm:def:sensorSystem:hydras");
Identifier id2 = new Identifier("supervisorCode", new Term(cs, "00ARGLELES", URI.create("urn:x-ogc:def:identifier:OGC:modelNumber")));
Identifier id3 = new Identifier("longName", new Term("ARGELES", URI.create("urn:x-ogc:def:identifier:OGC:longname")));
identifiers.add(id1);
identifiers.add(id2);
identifiers.add(id3);
IdentifierList identifierList = new IdentifierList(null, identifiers);
Identification identification = new Identification(identifierList);
system.setIdentification(identification);
Capabilities capabilities = new Capabilities();
List<DataComponentPropertyType> fields = new ArrayList<DataComponentPropertyType>();
QuantityType quantity = new QuantityType("urn:x-ogc:def:property:temperature", new UomPropertyType(null, "urn:ogc:unit:degree:celsius"), 0.1);
DataComponentPropertyType field1 = new DataComponentPropertyType("resolution", "urn:x-ogc:def:property:resolution", quantity);
fields.add(field1);
QuantityRange quantityR = new QuantityRange(new UomPropertyType(null, "urn:ogc:unit:percent"), Arrays.asList(-0.5, 0.5));
quantityR.setDefinition("urn:x-ogc:def:property:absoluteAccuracy");
DataComponentPropertyType field2 = new DataComponentPropertyType("accuracy", "urn:x-ogc:def:property:accuracy", quantityR);
fields.add(field2);
DataRecordType record = new DataRecordType("urn:x-ogc:def:property:measurementProperties", fields);
record.setDescription("Toutes les informations sur les contraintes sur les donnees");
JAXBElement<? extends AbstractDataRecordType> jbRecord = swe100Factory.createDataRecord(record);
capabilities.setAbstractDataRecord(jbRecord);
system.setCapabilities(capabilities);
AddressType address1 = new AddressType("SGR LRO-1039 Rue de Pinville-34000 Montpellier", "MONTPELLIER", null, null, null, "m.blaise@brgm.fr");
ContactInfo contactInfo1 = new ContactInfo(null, address1);
ResponsibleParty resp1 = new ResponsibleParty("BLAISE Marion (BRGM)", "BRGM", null, contactInfo1);
Contact contact1 = new Contact("urn:x-ogc:def:role:producer", resp1);
AddressType address2 = new AddressType("Hotel du Departement, B.P. 906, 66 906 Perpignan Cedex", "PERPIGNAN", null, null, null, null);
ContactInfo contactInfo2 = new ContactInfo(null, address2);
ResponsibleParty resp2 = new ResponsibleParty("ASSENS Martine (CG66)", "CONSEIL GENERAL DES PYRENEES ORIENTALES", null, contactInfo2);
Contact contact2 = new Contact("urn:x-ogc:def:role:owner", resp2);
system.setContact(Arrays.asList(contact1, contact2));
IoComponentPropertyType io = new IoComponentPropertyType("level", new ObservableProperty("urn:x-ogc:def:phenomenon:OGC:level"));
InputList inputList = new InputList(Arrays.asList(io));
Inputs inputs = new Inputs(inputList);
system.setInputs(inputs);
fields = new ArrayList<DataComponentPropertyType>();
TimeType time = new TimeType("urn:x-ogc:def:phenomenon:observationTime", new UomPropertyType(null, "urn:x-ogc:def:unit:ISO8601"));
fields.add(new DataComponentPropertyType("time", null, time));
QuantityType q = new QuantityType("urn:x-ogc:def:phenomenon:OGC:depth", new UomPropertyType("m", null), null);
fields.add(new DataComponentPropertyType("depth", null, q));
BooleanType b = new BooleanType("urn:x-ogc:def:phenomenon:BRGM:validity", null);
fields.add(new DataComponentPropertyType("validity", null, b));
DataRecordType outRecord = new DataRecordType(null, fields);
outRecord.setId("outputGroup");
IoComponentPropertyType io2 = new IoComponentPropertyType("piezoMeasurements", swe100Factory.createDataRecord(outRecord));
OutputList outputList = new OutputList(Arrays.asList(io2));
Outputs outputs = new Outputs(outputList);
system.setOutputs(outputs);
fields = new ArrayList<DataComponentPropertyType>();
q = new QuantityType("urn:x-ogc:def:property:depth", new UomPropertyType(null, "urn:ogc:unit:m"), 166.0);
fields.add(new DataComponentPropertyType("MaxDepth", null, q));
DataRecordType charRecord = new DataRecordType(null, fields);
List<DataComponentPropertyType> fields2 = new ArrayList<DataComponentPropertyType>();
fields2.add(new DataComponentPropertyType("physicalProperties", null, swe100Factory.createDataRecord(charRecord)));
DataRecordType ccharRecord = new DataRecordType("urn:x-ogc:def:property:physicalProperties", fields2);
Characteristics characteristics = new Characteristics();
characteristics.setAbstractDataRecord(swe100Factory.createDataRecord(ccharRecord));
system.setCharacteristics(characteristics);
DirectPositionType pos = new DirectPositionType("urn:ogc:crs:EPSG:27582", 2, Arrays.asList(65400.0, 1731368.0));
PointType point = new PointType("STATION_LOCALISATION", pos);
Location location = new Location(point);
system.setSMLLocation(location);
EngineeringDatumType engineeringDatum = new EngineeringDatumType("datum", "Sensor Datum", new CodeType("X, Y et Z sont orthogonal au regard d'un point de reference."));
EngineeringDatumRefType usesEngineeringDatum = new EngineeringDatumRefType(engineeringDatum);
EngineeringCRSType engineeringCRS = new EngineeringCRSType("STATION_FRAME", "Position absolue du capteur", new CoordinateSystemRefType("urn:ogc:def:crs:ogc:1.0:xyzFrame"), usesEngineeringDatum);
SpatialReferenceFrame spatialReferenceFrame = new SpatialReferenceFrame(engineeringCRS);
system.setSpatialReferenceFrame(spatialReferenceFrame);
Document doc = new Document("Fiche descriptive de la station", "text/html", Arrays.asList(new OnlineResource("http://ades.eaufrance.fr/FichePtEau.aspx?code=10972X0137/PONT")));
Documentation documentation = new Documentation(doc);
documentation.setRole("urn:ogc:role:description");
system.setDocumentation(Arrays.asList(documentation));
List<ComponentPropertyType> compos = new ArrayList<ComponentPropertyType>();
compos.add(new ComponentPropertyType("Profondeur", "urn:x-ogc:def:sensor:detector", "capteur_"));
ComponentList componentList = new ComponentList(compos);
Components components = new Components(componentList);
system.setComponents(components);
List<CoordinateType> coordinates = new ArrayList<CoordinateType>();
QuantityType xQuant = new QuantityType("urn:ogc:def:phenomenon:distance", new UomPropertyType("m", null), 0.0);
xQuant.setAxisID("X");
CoordinateType xcoord = new CoordinateType("x", xQuant);
QuantityType yQuant = new QuantityType("urn:ogc:def:phenomenon:distance", new UomPropertyType("m", null), 0.0);
yQuant.setAxisID("Y");
CoordinateType ycoord = new CoordinateType("y", yQuant);
QuantityType zQuant = new QuantityType("urn:ogc:def:phenomenon:distance", new UomPropertyType("m", null), 0.0);
zQuant.setAxisID("Z");
CoordinateType zcoord = new CoordinateType("z", zQuant);
coordinates.add(xcoord);
coordinates.add(ycoord);
coordinates.add(zcoord);
VectorType vect = new VectorType("urn:ogc:def:phenomenon:location", coordinates);
VectorPropertyType vectP = new VectorPropertyType(vect);
PositionType Sposition = new PositionType(URI.create("#REFERENCE_POINT"), URI.create("#PIEZOMETER_FRAME"), vectP, null);
Position position = new Position("piezoPosition", Sposition);
PositionList positionList = new PositionList(null, Arrays.asList(position));
Positions positions = new Positions(positionList);
system.setPositions(positions);
TemporalReferenceFrame temporalReferenceFrame = new TemporalReferenceFrame(new TemporalCRSType("temporalReference", null, null, "calendrier gregorien en heure d'ete", new TemporalCSRefType("urn:x-brgm:temporalCS:gregorian"), new TemporalDatumRefType("urn:x-brgm:temporalDatum:UniversalTime")));
system.setTemporalReferenceFrame(temporalReferenceFrame);
List<Connection> connecL = new ArrayList<Connection>();
connecL.add(new Connection("inputTolevel", new Link(null, new LinkRef("this/inputs/level"), new LinkRef("piezometer/inputs/level"))));
Connection c2 = new Connection("depthToOutput", new Link(null, new LinkRef("piezometer/outputs/depth"), new LinkRef("this/outputs/piezoMeasurements/depth")));
ArrayLink alink = new ArrayLink();
LinkRef sa = new LinkRef("piezometer/outputs/depth");
alink.setSourceArray(sa);
LinkRef si = new LinkRef("this/outputs/piezoMeasurements/depth");
alink.setSourceIndex(si);
LinkRef da = new LinkRef("this/outputs/piezoMeasurements/depth");
alink.setDestinationArray(da);
LinkRef di = new LinkRef("this/outputs/piezoMeasurements/depth");
alink.getDestinationIndex().add(di);
c2.setArrayLink(alink);
connecL.add(c2);
ConnectionList connectionList = new ConnectionList(connecL);
Connections connections = new Connections(connectionList);
system.setConnections(connections);
LayerPropertyType applicationLayer = new LayerPropertyType(new Category("urn:ogc:def:protocol:applicationLink", "urn:x-brgm:def:protocol:hydrasIRIS"));
LayerPropertyType dataLinkLayer = new LayerPropertyType(new Category("urn:ogc:def:protocol:dataLink", "urn:x-brgm:def:dataLink:RTC"));
InterfaceDefinition definition = new InterfaceDefinition(null, applicationLayer, dataLinkLayer);
Interface i1 = new Interface("RS-232", definition);
List<Interface> interfaceL = new ArrayList<Interface>();
interfaceL.add(i1);
InterfaceList interfaceList = new InterfaceList(null, interfaceL);
Interfaces interfaces = new Interfaces(interfaceList);
system.setInterfaces(interfaces);
Rights rights = new Rights(true, true, new Documentation(new Document("Donnees sous copyright du BRGM")));
LegalConstraint legalConstraint = new LegalConstraint(rights);
system.setLegalConstraint(legalConstraint);
system.setDescription("information about the piezometer");
system.setName(new DefaultIdentifier("Piezometer Test"));
member.setProcess(sml100Factory.createSystem(system));
SensorML expectedResult = new SensorML("1.0", Arrays.asList(member));
assertEquals(result.getMember().size(), 1);
assertTrue(result.getMember().get(0).getProcess() != null);
assertTrue(result.getMember().get(0).getProcess().getValue() instanceof SystemType);
SystemType resultProcess = (SystemType) result.getMember().get(0).getProcess().getValue();
assertEquals(resultProcess.getCapabilities().size(), system.getCapabilities().size());
assertTrue(resultProcess.getCapabilities().get(0).getAbstractDataRecord().getValue() instanceof DataRecordType);
DataRecordType resultRecord = (DataRecordType) resultProcess.getCapabilities().get(0).getAbstractDataRecord().getValue();
DataRecordType expRecord = (DataRecordType) system.getCapabilities().get(0).getAbstractDataRecord().getValue();
assertEquals(resultRecord.getField().get(0), expRecord.getField().get(0));
assertEquals(resultRecord.getField().get(1), expRecord.getField().get(1));
assertEquals(resultRecord.getField(), expRecord.getField());
assertEquals(resultProcess.getCapabilities().get(0).getAbstractDataRecord().getValue(), system.getCapabilities().get(0).getAbstractDataRecord().getValue());
assertEquals(resultProcess.getCapabilities().get(0), system.getCapabilities().get(0));
assertEquals(resultProcess.getCapabilities(), system.getCapabilities());
assertTrue(resultProcess.getContact().size() == 2);
assertEquals(resultProcess.getContact().get(0).getContactList(), system.getContact().get(0).getContactList());
assertEquals(resultProcess.getContact().get(0).getResponsibleParty().getContactInfo(), system.getContact().get(0).getResponsibleParty().getContactInfo());
assertEquals(resultProcess.getContact().get(0).getResponsibleParty().getOrganizationName(), system.getContact().get(0).getResponsibleParty().getOrganizationName());
assertEquals(resultProcess.getContact().get(0).getResponsibleParty(), system.getContact().get(0).getResponsibleParty());
assertEquals(resultProcess.getContact().get(0), system.getContact().get(0));
assertEquals(resultProcess.getContact(), system.getContact());
assertTrue(resultProcess.getClassification().size() == 1);
assertTrue(resultProcess.getClassification().get(0).getClassifierList().getClassifier().size() == 10);
assertEquals(resultProcess.getClassification().get(0).getClassifierList().getClassifier().get(0).getTerm(), system.getClassification().get(0).getClassifierList().getClassifier().get(0).getTerm());
assertEquals(resultProcess.getClassification().get(0).getClassifierList().getClassifier().get(0), system.getClassification().get(0).getClassifierList().getClassifier().get(0));
assertEquals(resultProcess.getClassification().get(0).getClassifierList().getClassifier(), system.getClassification().get(0).getClassifierList().getClassifier());
assertEquals(resultProcess.getClassification().get(0).getClassifierList(), system.getClassification().get(0).getClassifierList());
assertEquals(resultProcess.getClassification().get(0), system.getClassification().get(0));
assertEquals(resultProcess.getClassification(), system.getClassification());
assertEquals(resultProcess.getIdentification(), system.getIdentification());
assertEquals(resultProcess.getValidTime(), system.getValidTime());
assertEquals(resultProcess.getParameters(), system.getParameters());
assertEquals(resultProcess.getInputs().getInputList().getInput(), system.getInputs().getInputList().getInput());
assertEquals(resultProcess.getInputs().getInputList(), system.getInputs().getInputList());
assertEquals(resultProcess.getInputs(), system.getInputs());
assertEquals(resultProcess.getOutputs(), system.getOutputs());
assertEquals(resultProcess.getSMLLocation(), system.getSMLLocation());
assertEquals(resultProcess.getPosition(), system.getPosition());
assertEquals(resultProcess.getSpatialReferenceFrame(), system.getSpatialReferenceFrame());
assertEquals(resultProcess.getDocumentation(), system.getDocumentation());
assertEquals(resultProcess.getCharacteristics(), system.getCharacteristics());
assertEquals(resultProcess.getComponents(), system.getComponents());
assertEquals(resultProcess.getPositions(), system.getPositions());
assertEquals(resultProcess.getTemporalReferenceFrame(), system.getTemporalReferenceFrame());
assertEquals(resultProcess.getConnections().getConnectionList().getConnection().get(0), system.getConnections().getConnectionList().getConnection().get(0));
assertEquals(resultProcess.getConnections().getConnectionList().getConnection().get(1), system.getConnections().getConnectionList().getConnection().get(1));
assertEquals(resultProcess.getConnections().getConnectionList().getConnection(), system.getConnections().getConnectionList().getConnection());
assertEquals(resultProcess.getConnections().getConnectionList(), system.getConnections().getConnectionList());
assertEquals(resultProcess.getConnections(), system.getConnections());
assertEquals(resultProcess.getInterfaces(), system.getInterfaces());
assertEquals(resultProcess.getLegalConstraint(), system.getLegalConstraint());
assertEquals(resultProcess.getKeywords(), system.getKeywords());
assertEquals(resultProcess.getId(), system.getId());
assertEquals(resultProcess.getName(), system.getName());
assertEquals(resultProcess, system);
assertEquals(expectedResult.getMember().get(0), result.getMember().get(0));
assertEquals(expectedResult.getMember(), result.getMember());
assertEquals(expectedResult, result);
SensorMLMarshallerPool.getInstance().recycle(unmarshaller);
}
use of org.geotoolkit.sml.xml.v100.Keywords in project ORCID-Source by ORCID.
the class MemberV2ApiServiceDelegator_ReadPersonTest method testPerson.
private void testPerson(Person p, String orcid) {
// This is more an utility that will work only for 0000-0000-0000-0003
assertEquals("0000-0000-0000-0003", orcid);
assertNotNull(p);
assertEquals("/0000-0000-0000-0003/person", p.getPath());
Utils.verifyLastModified(p.getLastModifiedDate());
// Address
assertNotNull(p.getAddresses());
Addresses a = p.getAddresses();
assertNotNull(a);
Utils.verifyLastModified(a.getLastModifiedDate());
assertEquals(3, a.getAddress().size());
boolean found1 = false, found2 = false, found3 = false;
for (Address element : a.getAddress()) {
Utils.verifyLastModified(element.getLastModifiedDate());
if (element.getPutCode() == 9) {
found1 = true;
} else if (element.getPutCode() == 10) {
found2 = true;
} else if (element.getPutCode() == 11) {
found3 = true;
} else {
fail("Invalid put code " + element.getPutCode());
}
}
assertTrue(found1);
assertTrue(found2);
assertTrue(found3);
// Biography
assertNotNull(p.getBiography());
Biography b = p.getBiography();
assertNotNull(b);
Utils.verifyLastModified(b.getLastModifiedDate());
assertEquals("Biography for 0000-0000-0000-0003", b.getContent());
// Email
assertNotNull(p.getEmails());
Emails email = p.getEmails();
assertNotNull(email);
Utils.verifyLastModified(email.getLastModifiedDate());
assertEquals(3, email.getEmails().size());
assertEquals("public_0000-0000-0000-0003@test.orcid.org", email.getEmails().get(0).getEmail());
found1 = false;
found2 = false;
found3 = false;
for (Email element : email.getEmails()) {
if (element.getEmail().equals("public_0000-0000-0000-0003@test.orcid.org")) {
found1 = true;
} else if (element.getEmail().equals("limited_0000-0000-0000-0003@test.orcid.org")) {
found2 = true;
} else if (element.getEmail().equals("private_0000-0000-0000-0003@test.orcid.org")) {
found3 = true;
} else {
fail("Invalid email " + element.getEmail());
}
}
assertTrue(found1);
assertTrue(found2);
assertTrue(found3);
// External identifiers
assertNotNull(p.getExternalIdentifiers());
PersonExternalIdentifiers extIds = p.getExternalIdentifiers();
assertNotNull(extIds);
Utils.verifyLastModified(extIds.getLastModifiedDate());
assertEquals(3, extIds.getExternalIdentifiers().size());
found1 = false;
found2 = false;
found3 = false;
for (PersonExternalIdentifier element : extIds.getExternalIdentifiers()) {
Utils.verifyLastModified(element.getLastModifiedDate());
if (element.getPutCode() == 13) {
found1 = true;
} else if (element.getPutCode() == 14) {
found2 = true;
} else if (element.getPutCode() == 15) {
found3 = true;
} else {
fail("Invalid put code " + element.getPutCode());
}
}
assertTrue(found1);
assertTrue(found2);
assertTrue(found3);
// Keywords
assertNotNull(p.getKeywords());
Keywords k = p.getKeywords();
assertNotNull(k);
Utils.verifyLastModified(k.getLastModifiedDate());
assertEquals(3, k.getKeywords().size());
found1 = false;
found2 = false;
found3 = false;
for (Keyword element : k.getKeywords()) {
Utils.verifyLastModified(element.getLastModifiedDate());
if (element.getPutCode() == 9) {
found1 = true;
} else if (element.getPutCode() == 10) {
found2 = true;
} else if (element.getPutCode() == 11) {
found3 = true;
} else {
fail("Invalid put code " + element.getPutCode());
}
}
assertTrue(found1);
assertTrue(found2);
assertTrue(found3);
// Name
assertNotNull(p.getName());
assertEquals("Credit Name", p.getName().getCreditName().getContent());
assertEquals("Given Names", p.getName().getGivenNames().getContent());
assertEquals("Family Name", p.getName().getFamilyName().getContent());
// Other names
assertNotNull(p.getOtherNames());
OtherNames o = p.getOtherNames();
assertNotNull(o);
Utils.verifyLastModified(o.getLastModifiedDate());
assertEquals(3, o.getOtherNames().size());
found1 = false;
found2 = false;
found3 = false;
for (OtherName element : o.getOtherNames()) {
Utils.verifyLastModified(element.getLastModifiedDate());
if (element.getPutCode() == 13) {
found1 = true;
} else if (element.getPutCode() == 14) {
found2 = true;
} else if (element.getPutCode() == 15) {
found3 = true;
} else {
fail("Invalid put code " + element.getPutCode());
}
}
assertTrue(found1);
assertTrue(found2);
assertTrue(found3);
// Researcher urls
assertNotNull(p.getResearcherUrls());
ResearcherUrls ru = p.getResearcherUrls();
assertNotNull(ru);
Utils.verifyLastModified(ru.getLastModifiedDate());
assertEquals(3, ru.getResearcherUrls().size());
found1 = false;
found2 = false;
found3 = false;
for (ResearcherUrl element : ru.getResearcherUrls()) {
Utils.verifyLastModified(element.getLastModifiedDate());
if (element.getPutCode() == 13) {
found1 = true;
} else if (element.getPutCode() == 14) {
found2 = true;
} else if (element.getPutCode() == 15) {
found3 = true;
} else {
fail("Invalid put code " + element.getPutCode());
}
}
assertTrue(found1);
assertTrue(found2);
assertTrue(found3);
assertNotNull(p.getPath());
}
use of org.geotoolkit.sml.xml.v100.Keywords in project ORCID-Source by ORCID.
the class OrcidSecurityManager_FullRecordTest method testRecord_When_SomePrivate_NoSource_ReadLimitedToken.
@Test
public void testRecord_When_SomePrivate_NoSource_ReadLimitedToken() {
SecurityContextTestUtils.setUpSecurityContext(ORCID_1, CLIENT_1, ScopePathType.READ_LIMITED);
Name name = createName(Visibility.PRIVATE);
Biography bio = createBiography(Visibility.PUBLIC);
Address a1 = createAddress(Visibility.PRIVATE, CLIENT_2);
Address a2 = createAddress(Visibility.PUBLIC, CLIENT_2);
Address a3 = createAddress(Visibility.PRIVATE, CLIENT_2);
Addresses addresses = new Addresses();
addresses.setAddress(new ArrayList<Address>(Arrays.asList(a1, a2, a3)));
Email e1 = createEmail(Visibility.PRIVATE, CLIENT_2);
Email e2 = createEmail(Visibility.PUBLIC, CLIENT_2);
Email e3 = createEmail(Visibility.PRIVATE, CLIENT_2);
Emails emails = new Emails();
emails.setEmails(new ArrayList<Email>(Arrays.asList(e1, e2, e3)));
Keyword k1 = createKeyword(Visibility.PRIVATE, CLIENT_2);
Keyword k2 = createKeyword(Visibility.PUBLIC, CLIENT_2);
Keyword k3 = createKeyword(Visibility.PRIVATE, CLIENT_2);
Keywords keywords = new Keywords();
keywords.setKeywords(new ArrayList<Keyword>(Arrays.asList(k1, k2, k3)));
OtherName o1 = createOtherName(Visibility.PRIVATE, CLIENT_2);
OtherName o2 = createOtherName(Visibility.PUBLIC, CLIENT_2);
OtherName o3 = createOtherName(Visibility.PRIVATE, CLIENT_2);
OtherNames otherNames = new OtherNames();
otherNames.setOtherNames(new ArrayList<OtherName>(Arrays.asList(o1, o2, o3)));
PersonExternalIdentifier ext1 = createPersonExternalIdentifier(Visibility.PRIVATE, CLIENT_2);
PersonExternalIdentifier ext2 = createPersonExternalIdentifier(Visibility.PUBLIC, CLIENT_2);
PersonExternalIdentifier ext3 = createPersonExternalIdentifier(Visibility.PRIVATE, CLIENT_2);
PersonExternalIdentifiers extIds = new PersonExternalIdentifiers();
extIds.setExternalIdentifiers(new ArrayList<PersonExternalIdentifier>(Arrays.asList(ext1, ext2, ext3)));
ResearcherUrl r1 = createResearcherUrl(Visibility.PRIVATE, CLIENT_2);
ResearcherUrl r2 = createResearcherUrl(Visibility.PUBLIC, CLIENT_2);
ResearcherUrl r3 = createResearcherUrl(Visibility.PRIVATE, CLIENT_2);
ResearcherUrls researcherUrls = new ResearcherUrls();
researcherUrls.setResearcherUrls(new ArrayList<ResearcherUrl>(Arrays.asList(r1, r2, r3)));
EducationSummary edu1 = createEducationSummary(Visibility.PRIVATE, CLIENT_2);
EducationSummary edu2 = createEducationSummary(Visibility.PUBLIC, CLIENT_2);
EducationSummary edu3 = createEducationSummary(Visibility.PRIVATE, CLIENT_2);
EmploymentSummary em1 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_2);
EmploymentSummary em2 = createEmploymentSummary(Visibility.PUBLIC, CLIENT_2);
EmploymentSummary em3 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_2);
FundingSummary f1 = createFundingSummary(Visibility.PRIVATE, CLIENT_2, EXTID_1);
FundingSummary f2 = createFundingSummary(Visibility.PUBLIC, CLIENT_2, EXTID_2);
FundingSummary f3 = createFundingSummary(Visibility.PRIVATE, CLIENT_2, EXTID_3);
PeerReviewSummary p1 = createPeerReviewSummary(Visibility.PRIVATE, CLIENT_2, EXTID_1);
PeerReviewSummary p2 = createPeerReviewSummary(Visibility.PUBLIC, CLIENT_2, EXTID_2);
PeerReviewSummary p3 = createPeerReviewSummary(Visibility.PRIVATE, CLIENT_2, EXTID_3);
WorkSummary w1 = createWorkSummary(Visibility.PRIVATE, CLIENT_2, EXTID_1);
WorkSummary w2 = createWorkSummary(Visibility.PUBLIC, CLIENT_2, EXTID_2);
WorkSummary w3 = createWorkSummary(Visibility.PRIVATE, CLIENT_2, EXTID_3);
ActivitiesSummary as = new ActivitiesSummary();
as.setEducations(createEducations(edu1, edu2, edu3));
as.setEmployments(createEmployments(em1, em2, em3));
as.setFundings(createFundings(f1, f2, f3));
as.setPeerReviews(createPeerReviews(p1, p2, p3));
as.setWorks(createWorks(w1, w2, w3));
Person p = new Person();
p.setBiography(bio);
p.setName(name);
p.setAddresses(addresses);
p.setEmails(emails);
p.setExternalIdentifiers(extIds);
p.setKeywords(keywords);
p.setOtherNames(otherNames);
p.setResearcherUrls(researcherUrls);
Record record = new Record();
record.setActivitiesSummary(as);
record.setPerson(p);
orcidSecurityManager.checkAndFilter(ORCID_1, record);
assertNotNull(record);
// Check person
assertNull(p.getName());
assertEquals(bio, p.getBiography());
// Check addresses
assertEquals(1, p.getAddresses().getAddress().size());
assertFalse(p.getAddresses().getAddress().contains(a1));
assertTrue(p.getAddresses().getAddress().contains(a2));
assertFalse(p.getAddresses().getAddress().contains(a3));
// Check emails
assertEquals(1, p.getEmails().getEmails().size());
assertFalse(p.getEmails().getEmails().contains(e1));
assertTrue(p.getEmails().getEmails().contains(e2));
assertFalse(p.getEmails().getEmails().contains(e3));
// Check ext ids
assertEquals(1, p.getExternalIdentifiers().getExternalIdentifiers().size());
assertFalse(p.getExternalIdentifiers().getExternalIdentifiers().contains(ext1));
assertTrue(p.getExternalIdentifiers().getExternalIdentifiers().contains(ext2));
assertFalse(p.getExternalIdentifiers().getExternalIdentifiers().contains(ext3));
// Check keywords
assertEquals(1, p.getKeywords().getKeywords().size());
assertFalse(p.getKeywords().getKeywords().contains(k1));
assertTrue(p.getKeywords().getKeywords().contains(k2));
assertFalse(p.getKeywords().getKeywords().contains(k3));
// Check other names
assertEquals(1, p.getOtherNames().getOtherNames().size());
assertFalse(p.getOtherNames().getOtherNames().contains(o1));
assertTrue(p.getOtherNames().getOtherNames().contains(o2));
assertFalse(p.getOtherNames().getOtherNames().contains(o3));
// Check researcher urls
assertEquals(1, p.getResearcherUrls().getResearcherUrls().size());
assertFalse(p.getResearcherUrls().getResearcherUrls().contains(r1));
assertTrue(p.getResearcherUrls().getResearcherUrls().contains(r2));
assertFalse(p.getResearcherUrls().getResearcherUrls().contains(r3));
// Check activities
assertNotNull(as);
// Check educations
assertEquals(1, as.getEducations().getSummaries().size());
assertFalse(as.getEducations().getSummaries().contains(edu1));
assertTrue(as.getEducations().getSummaries().contains(edu2));
assertFalse(as.getEducations().getSummaries().contains(edu3));
// Check employments
assertEquals(1, as.getEmployments().getSummaries().size());
assertFalse(as.getEmployments().getSummaries().contains(em1));
assertTrue(as.getEmployments().getSummaries().contains(em2));
assertFalse(as.getEmployments().getSummaries().contains(em3));
// Check fundings
assertEquals(1, as.getFundings().getFundingGroup().size());
assertEquals(1, as.getFundings().getFundingGroup().get(0).getActivities().size());
assertFalse(as.getFundings().getFundingGroup().get(0).getActivities().contains(f1));
assertTrue(as.getFundings().getFundingGroup().get(0).getActivities().contains(f2));
assertFalse(as.getFundings().getFundingGroup().get(0).getActivities().contains(f3));
assertEquals(2, as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().size());
assertFalse(as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_1)));
assertTrue(as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_2)));
assertFalse(as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_3)));
assertTrue(as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_SHARED)));
// Check peer reviews
assertEquals(1, as.getPeerReviews().getPeerReviewGroup().size());
assertEquals(1, as.getPeerReviews().getPeerReviewGroup().get(0).getActivities().size());
assertFalse(as.getPeerReviews().getPeerReviewGroup().get(0).getActivities().contains(p1));
assertTrue(as.getPeerReviews().getPeerReviewGroup().get(0).getActivities().contains(p2));
assertFalse(as.getPeerReviews().getPeerReviewGroup().get(0).getActivities().contains(p3));
assertEquals(1, as.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier().size());
assertTrue(as.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_SHARED, "peer-review")));
// Check works
assertEquals(1, as.getWorks().getWorkGroup().size());
assertEquals(1, as.getWorks().getWorkGroup().get(0).getActivities().size());
assertFalse(as.getWorks().getWorkGroup().get(0).getActivities().contains(w1));
assertTrue(as.getWorks().getWorkGroup().get(0).getActivities().contains(w2));
assertFalse(as.getWorks().getWorkGroup().get(0).getActivities().contains(w3));
assertEquals(2, as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().size());
assertFalse(as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_1)));
assertTrue(as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_2)));
assertFalse(as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_3)));
assertTrue(as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_SHARED)));
}
use of org.geotoolkit.sml.xml.v100.Keywords in project ORCID-Source by ORCID.
the class OrcidSecurityManager_FullRecordTest method testRecord_When_AllPrivate_NoSource_ReadPublicToken.
@Test
public void testRecord_When_AllPrivate_NoSource_ReadPublicToken() {
SecurityContextTestUtils.setUpSecurityContext(ORCID_1, CLIENT_1, ScopePathType.READ_PUBLIC);
Name name = createName(Visibility.PRIVATE);
Biography bio = createBiography(Visibility.PRIVATE);
Address a1 = createAddress(Visibility.PRIVATE, CLIENT_2);
Address a2 = createAddress(Visibility.PRIVATE, CLIENT_2);
Address a3 = createAddress(Visibility.PRIVATE, CLIENT_2);
Addresses addresses = new Addresses();
addresses.setAddress(new ArrayList<Address>(Arrays.asList(a1, a2, a3)));
Email e1 = createEmail(Visibility.PRIVATE, CLIENT_2);
Email e2 = createEmail(Visibility.PRIVATE, CLIENT_2);
Email e3 = createEmail(Visibility.PRIVATE, CLIENT_2);
Emails emails = new Emails();
emails.setEmails(new ArrayList<Email>(Arrays.asList(e1, e2, e3)));
Keyword k1 = createKeyword(Visibility.PRIVATE, CLIENT_2);
Keyword k2 = createKeyword(Visibility.PRIVATE, CLIENT_2);
Keyword k3 = createKeyword(Visibility.PRIVATE, CLIENT_2);
Keywords keywords = new Keywords();
keywords.setKeywords(new ArrayList<Keyword>(Arrays.asList(k1, k2, k3)));
OtherName o1 = createOtherName(Visibility.PRIVATE, CLIENT_2);
OtherName o2 = createOtherName(Visibility.PRIVATE, CLIENT_2);
OtherName o3 = createOtherName(Visibility.PRIVATE, CLIENT_2);
OtherNames otherNames = new OtherNames();
otherNames.setOtherNames(new ArrayList<OtherName>(Arrays.asList(o1, o2, o3)));
PersonExternalIdentifier ext1 = createPersonExternalIdentifier(Visibility.PRIVATE, CLIENT_2);
PersonExternalIdentifier ext2 = createPersonExternalIdentifier(Visibility.PRIVATE, CLIENT_2);
PersonExternalIdentifier ext3 = createPersonExternalIdentifier(Visibility.PRIVATE, CLIENT_2);
PersonExternalIdentifiers extIds = new PersonExternalIdentifiers();
extIds.setExternalIdentifiers(new ArrayList<PersonExternalIdentifier>(Arrays.asList(ext1, ext2, ext3)));
ResearcherUrl r1 = createResearcherUrl(Visibility.PRIVATE, CLIENT_2);
ResearcherUrl r2 = createResearcherUrl(Visibility.PRIVATE, CLIENT_2);
ResearcherUrl r3 = createResearcherUrl(Visibility.PRIVATE, CLIENT_2);
ResearcherUrls researcherUrls = new ResearcherUrls();
researcherUrls.setResearcherUrls(new ArrayList<ResearcherUrl>(Arrays.asList(r1, r2, r3)));
EducationSummary edu1 = createEducationSummary(Visibility.PRIVATE, CLIENT_2);
EducationSummary edu2 = createEducationSummary(Visibility.PRIVATE, CLIENT_2);
EducationSummary edu3 = createEducationSummary(Visibility.PRIVATE, CLIENT_2);
EmploymentSummary em1 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_2);
EmploymentSummary em2 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_2);
EmploymentSummary em3 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_2);
FundingSummary f1 = createFundingSummary(Visibility.PRIVATE, CLIENT_2, EXTID_1);
FundingSummary f2 = createFundingSummary(Visibility.PRIVATE, CLIENT_2, EXTID_2);
FundingSummary f3 = createFundingSummary(Visibility.PRIVATE, CLIENT_2, EXTID_3);
PeerReviewSummary p1 = createPeerReviewSummary(Visibility.PRIVATE, CLIENT_2, EXTID_1);
PeerReviewSummary p2 = createPeerReviewSummary(Visibility.PRIVATE, CLIENT_2, EXTID_2);
PeerReviewSummary p3 = createPeerReviewSummary(Visibility.PRIVATE, CLIENT_2, EXTID_3);
WorkSummary w1 = createWorkSummary(Visibility.PRIVATE, CLIENT_2, EXTID_1);
WorkSummary w2 = createWorkSummary(Visibility.PRIVATE, CLIENT_2, EXTID_2);
WorkSummary w3 = createWorkSummary(Visibility.PRIVATE, CLIENT_2, EXTID_3);
ActivitiesSummary as = new ActivitiesSummary();
as.setEducations(createEducations(edu1, edu2, edu3));
as.setEmployments(createEmployments(em1, em2, em3));
as.setFundings(createFundings(f1, f2, f3));
as.setPeerReviews(createPeerReviews(p1, p2, p3));
as.setWorks(createWorks(w1, w2, w3));
Person p = new Person();
p.setBiography(bio);
p.setName(name);
p.setAddresses(addresses);
p.setEmails(emails);
p.setExternalIdentifiers(extIds);
p.setKeywords(keywords);
p.setOtherNames(otherNames);
p.setResearcherUrls(researcherUrls);
Record record = new Record();
record.setActivitiesSummary(as);
record.setPerson(p);
orcidSecurityManager.checkAndFilter(ORCID_1, record);
assertNotNull(record);
// Check person
assertNull(p.getName());
assertNull(p.getBiography());
// Check addresses
assertEquals(0, p.getAddresses().getAddress().size());
// Check emails
assertEquals(0, p.getEmails().getEmails().size());
// Check ext ids
assertEquals(0, p.getExternalIdentifiers().getExternalIdentifiers().size());
// Check keywords
assertEquals(0, p.getKeywords().getKeywords().size());
// Check other names
assertEquals(0, p.getOtherNames().getOtherNames().size());
// Check researcher urls
assertEquals(0, p.getResearcherUrls().getResearcherUrls().size());
// Check activities
assertNotNull(as);
// Check educations
assertEquals(0, as.getEducations().getSummaries().size());
// Check employments
assertEquals(0, as.getEmployments().getSummaries().size());
// Check fundings
assertEquals(0, as.getFundings().getFundingGroup().size());
// Check peer reviews
assertEquals(0, as.getPeerReviews().getPeerReviewGroup().size());
// Check works
assertEquals(0, as.getWorks().getWorkGroup().size());
}
use of org.geotoolkit.sml.xml.v100.Keywords in project ORCID-Source by ORCID.
the class OrcidSecurityManager_FullRecordTest method testRecord_When_AllPrivate_Source_ReadLimitedToken.
@Test
public void testRecord_When_AllPrivate_Source_ReadLimitedToken() {
SecurityContextTestUtils.setUpSecurityContext(ORCID_1, CLIENT_1, ScopePathType.READ_LIMITED);
Name name = createName(Visibility.PRIVATE);
Biography bio = createBiography(Visibility.PRIVATE);
Address a1 = createAddress(Visibility.PRIVATE, CLIENT_1);
Address a2 = createAddress(Visibility.PRIVATE, CLIENT_1);
Address a3 = createAddress(Visibility.PRIVATE, CLIENT_1);
Addresses addresses = new Addresses();
addresses.setAddress(new ArrayList<Address>(Arrays.asList(a1, a2, a3)));
Email e1 = createEmail(Visibility.PRIVATE, CLIENT_1);
Email e2 = createEmail(Visibility.PRIVATE, CLIENT_1);
Email e3 = createEmail(Visibility.PRIVATE, CLIENT_1);
Emails emails = new Emails();
emails.setEmails(new ArrayList<Email>(Arrays.asList(e1, e2, e3)));
Keyword k1 = createKeyword(Visibility.PRIVATE, CLIENT_1);
Keyword k2 = createKeyword(Visibility.PRIVATE, CLIENT_1);
Keyword k3 = createKeyword(Visibility.PRIVATE, CLIENT_1);
Keywords keywords = new Keywords();
keywords.setKeywords(new ArrayList<Keyword>(Arrays.asList(k1, k2, k3)));
OtherName o1 = createOtherName(Visibility.PRIVATE, CLIENT_1);
OtherName o2 = createOtherName(Visibility.PRIVATE, CLIENT_1);
OtherName o3 = createOtherName(Visibility.PRIVATE, CLIENT_1);
OtherNames otherNames = new OtherNames();
otherNames.setOtherNames(new ArrayList<OtherName>(Arrays.asList(o1, o2, o3)));
PersonExternalIdentifier ext1 = createPersonExternalIdentifier(Visibility.PRIVATE, CLIENT_1);
PersonExternalIdentifier ext2 = createPersonExternalIdentifier(Visibility.PRIVATE, CLIENT_1);
PersonExternalIdentifier ext3 = createPersonExternalIdentifier(Visibility.PRIVATE, CLIENT_1);
PersonExternalIdentifiers extIds = new PersonExternalIdentifiers();
extIds.setExternalIdentifiers(new ArrayList<PersonExternalIdentifier>(Arrays.asList(ext1, ext2, ext3)));
ResearcherUrl r1 = createResearcherUrl(Visibility.PRIVATE, CLIENT_1);
ResearcherUrl r2 = createResearcherUrl(Visibility.PRIVATE, CLIENT_1);
ResearcherUrl r3 = createResearcherUrl(Visibility.PRIVATE, CLIENT_1);
ResearcherUrls researcherUrls = new ResearcherUrls();
researcherUrls.setResearcherUrls(new ArrayList<ResearcherUrl>(Arrays.asList(r1, r2, r3)));
EducationSummary edu1 = createEducationSummary(Visibility.PRIVATE, CLIENT_1);
EducationSummary edu2 = createEducationSummary(Visibility.PRIVATE, CLIENT_1);
EducationSummary edu3 = createEducationSummary(Visibility.PRIVATE, CLIENT_1);
EmploymentSummary em1 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_1);
EmploymentSummary em2 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_1);
EmploymentSummary em3 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_1);
FundingSummary f1 = createFundingSummary(Visibility.PRIVATE, CLIENT_1, EXTID_1);
FundingSummary f2 = createFundingSummary(Visibility.PRIVATE, CLIENT_1, EXTID_2);
FundingSummary f3 = createFundingSummary(Visibility.PRIVATE, CLIENT_1, EXTID_3);
PeerReviewSummary p1 = createPeerReviewSummary(Visibility.PRIVATE, CLIENT_1, EXTID_1);
PeerReviewSummary p2 = createPeerReviewSummary(Visibility.PRIVATE, CLIENT_1, EXTID_2);
PeerReviewSummary p3 = createPeerReviewSummary(Visibility.PRIVATE, CLIENT_1, EXTID_3);
WorkSummary w1 = createWorkSummary(Visibility.PRIVATE, CLIENT_1, EXTID_1);
WorkSummary w2 = createWorkSummary(Visibility.PRIVATE, CLIENT_1, EXTID_2);
WorkSummary w3 = createWorkSummary(Visibility.PRIVATE, CLIENT_1, EXTID_3);
ActivitiesSummary as = new ActivitiesSummary();
as.setEducations(createEducations(edu1, edu2, edu3));
as.setEmployments(createEmployments(em1, em2, em3));
as.setFundings(createFundings(f1, f2, f3));
as.setPeerReviews(createPeerReviews(p1, p2, p3));
as.setWorks(createWorks(w1, w2, w3));
Person p = new Person();
p.setBiography(bio);
p.setName(name);
p.setAddresses(addresses);
p.setEmails(emails);
p.setExternalIdentifiers(extIds);
p.setKeywords(keywords);
p.setOtherNames(otherNames);
p.setResearcherUrls(researcherUrls);
Record record = new Record();
record.setActivitiesSummary(as);
record.setPerson(p);
orcidSecurityManager.checkAndFilter(ORCID_1, record);
assertNotNull(record);
// Check person
assertNull(p.getName());
assertNull(p.getBiography());
// Check addresses
assertEquals(3, p.getAddresses().getAddress().size());
assertTrue(p.getAddresses().getAddress().contains(a1));
assertTrue(p.getAddresses().getAddress().contains(a2));
assertTrue(p.getAddresses().getAddress().contains(a3));
// Check emails
assertEquals(3, p.getEmails().getEmails().size());
assertTrue(p.getEmails().getEmails().contains(e1));
assertTrue(p.getEmails().getEmails().contains(e2));
assertTrue(p.getEmails().getEmails().contains(e3));
// Check ext ids
assertEquals(3, p.getExternalIdentifiers().getExternalIdentifiers().size());
assertTrue(p.getExternalIdentifiers().getExternalIdentifiers().contains(ext1));
assertTrue(p.getExternalIdentifiers().getExternalIdentifiers().contains(ext2));
assertTrue(p.getExternalIdentifiers().getExternalIdentifiers().contains(ext3));
// Check keywords
assertEquals(3, p.getKeywords().getKeywords().size());
assertTrue(p.getKeywords().getKeywords().contains(k1));
assertTrue(p.getKeywords().getKeywords().contains(k2));
assertTrue(p.getKeywords().getKeywords().contains(k3));
// Check other names
assertEquals(3, p.getOtherNames().getOtherNames().size());
assertTrue(p.getOtherNames().getOtherNames().contains(o1));
assertTrue(p.getOtherNames().getOtherNames().contains(o2));
assertTrue(p.getOtherNames().getOtherNames().contains(o3));
// Check researcher urls
assertEquals(3, p.getResearcherUrls().getResearcherUrls().size());
assertTrue(p.getResearcherUrls().getResearcherUrls().contains(r1));
assertTrue(p.getResearcherUrls().getResearcherUrls().contains(r2));
assertTrue(p.getResearcherUrls().getResearcherUrls().contains(r3));
// Check activities
assertNotNull(as);
// Check educations
assertEquals(3, as.getEducations().getSummaries().size());
assertTrue(as.getEducations().getSummaries().contains(edu1));
assertTrue(as.getEducations().getSummaries().contains(edu2));
assertTrue(as.getEducations().getSummaries().contains(edu3));
// Check employments
assertEquals(3, as.getEmployments().getSummaries().size());
assertTrue(as.getEmployments().getSummaries().contains(em1));
assertTrue(as.getEmployments().getSummaries().contains(em2));
assertTrue(as.getEmployments().getSummaries().contains(em3));
// Check fundings
assertEquals(1, as.getFundings().getFundingGroup().size());
assertEquals(3, as.getFundings().getFundingGroup().get(0).getActivities().size());
assertTrue(as.getFundings().getFundingGroup().get(0).getActivities().contains(f1));
assertTrue(as.getFundings().getFundingGroup().get(0).getActivities().contains(f2));
assertTrue(as.getFundings().getFundingGroup().get(0).getActivities().contains(f3));
assertEquals(4, as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().size());
assertTrue(as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_1)));
assertTrue(as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_2)));
assertTrue(as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_3)));
assertTrue(as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_SHARED)));
// Check peer reviews
assertEquals(1, as.getPeerReviews().getPeerReviewGroup().size());
assertEquals(3, as.getPeerReviews().getPeerReviewGroup().get(0).getActivities().size());
assertTrue(as.getPeerReviews().getPeerReviewGroup().get(0).getActivities().contains(p1));
assertTrue(as.getPeerReviews().getPeerReviewGroup().get(0).getActivities().contains(p2));
assertTrue(as.getPeerReviews().getPeerReviewGroup().get(0).getActivities().contains(p3));
assertEquals(1, as.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier().size());
assertTrue(as.getPeerReviews().getPeerReviewGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_SHARED, "peer-review")));
// Check works
assertEquals(1, as.getWorks().getWorkGroup().size());
assertEquals(3, as.getWorks().getWorkGroup().get(0).getActivities().size());
assertTrue(as.getWorks().getWorkGroup().get(0).getActivities().contains(w1));
assertTrue(as.getWorks().getWorkGroup().get(0).getActivities().contains(w2));
assertTrue(as.getWorks().getWorkGroup().get(0).getActivities().contains(w3));
assertEquals(4, as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().size());
assertTrue(as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_1)));
assertTrue(as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_2)));
assertTrue(as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_3)));
assertTrue(as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_SHARED)));
}
Aggregations