package eu.dnetlib.iis.wf.importer.infospace.converter; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import org.junit.Test; import eu.dnetlib.data.proto.FieldTypeProtos.Qualifier; import eu.dnetlib.data.proto.OafProtos.OafRel; import eu.dnetlib.data.proto.ProjectOrganizationProtos.ProjectOrganization; import eu.dnetlib.data.proto.ProjectOrganizationProtos.ProjectOrganization.Participation; import eu.dnetlib.data.proto.RelMetadataProtos.RelMetadata; import eu.dnetlib.data.proto.RelTypeProtos.RelType; import eu.dnetlib.data.proto.RelTypeProtos.SubRelType; import eu.dnetlib.iis.importer.schemas.ProjectToOrganization; import eu.dnetlib.iis.wf.importer.infospace.converter.ProjectToOrganizationRelationConverter; /** * @author mhorst */ public class ProjectToOrganizationRelationConverterTest { ProjectToOrganizationRelationConverter converter = new ProjectToOrganizationRelationConverter(); // ------------------------ TESTS -------------------------- @Test(expected = NullPointerException.class) public void buildObject_null_oafRel() throws Exception { // execute converter.convert(null); } @Test public void buildObject() throws Exception { // given String projectId = "someProjectId"; String organizationId = "someOrgId"; // execute ProjectToOrganization projOrg = converter.convert(createOafRelObject(projectId, organizationId)); // assert assertNotNull(projOrg); assertEquals(projectId, projOrg.getProjectId()); assertEquals(organizationId, projOrg.getOrganizationId()); } // ------------------------ PRIVATE -------------------------- private OafRel createOafRelObject(String projectId, String organizationId) { String relClass = "hasParticipant"; Qualifier semantics = Qualifier.newBuilder().setClassid(relClass).setClassname(relClass) .setSchemeid("dnet:project_organization_relations").setSchemename("dnet:project_organization_relations") .build(); RelMetadata relMetadata = RelMetadata.newBuilder().setSemantics(semantics).build(); return OafRel.newBuilder().setRelType(RelType.projectOrganization).setSubRelType(SubRelType.participation) .setRelClass(relClass).setChild(false).setSource(projectId).setTarget(organizationId) .setProjectOrganization(ProjectOrganization.newBuilder() .setParticipation(Participation.newBuilder().setRelMetadata(relMetadata)).build()) .build(); } }