Search in sources :

Example 76 with Works

use of org.orcid.jaxb.model.v3.dev1.record.summary.Works in project ORCID-Source by ORCID.

the class GetMyDataControllerTest method before.

@Before
public void before() {
    MockitoAnnotations.initMocks(this);
    TargetProxyHelper.injectIntoProxy(getMyDataController, "batchSize", 50);
    TargetProxyHelper.injectIntoProxy(getMyDataController, "personDetailsManager", mockPersonDetailsManager);
    TargetProxyHelper.injectIntoProxy(getMyDataController, "workEntityCacheManager", mockWorkEntityCacheManager);
    TargetProxyHelper.injectIntoProxy(getMyDataController, "affiliationManagerReadOnly", mockAffiliationManagerReadOnly);
    TargetProxyHelper.injectIntoProxy(getMyDataController, "profileFundingManagerReadOnly", mockProfileFundingManagerReadOnly);
    TargetProxyHelper.injectIntoProxy(getMyDataController, "peerReviewManagerReadOnly", mockPeerReviewManagerReadOnly);
    TargetProxyHelper.injectIntoProxy(getMyDataController, "workManagerReadOnly", mockWorkManagerReadOnly);
    when(mockPersonDetailsManager.getPersonDetails(anyString())).thenAnswer(new Answer<Person>() {

        @Override
        public Person answer(InvocationOnMock invocation) throws Throwable {
            Person p = new Person();
            p.setBiography(new Biography("Biography", Visibility.LIMITED));
            Name name = new Name();
            name.setVisibility(Visibility.LIMITED);
            name.setFamilyName(new FamilyName("Family Name"));
            name.setGivenNames(new GivenNames("Given Names"));
            name.setCreditName(new CreditName("Credit Name"));
            p.setName(name);
            return p;
        }
    });
    when(mockAffiliationManagerReadOnly.getAffiliations(anyString())).thenAnswer(new Answer<List<Affiliation>>() {

        @Override
        public List<Affiliation> answer(InvocationOnMock invocation) throws Throwable {
            List<Affiliation> affs = new ArrayList<Affiliation>();
            FuzzyDate startDate = new FuzzyDate(new Year(2018), new Month(1), new Day(1));
            FuzzyDate endDate = new FuzzyDate(new Year(2018), new Month(12), new Day(31));
            Distinction d = new Distinction();
            d.setDepartmentName("distinction");
            d.setEndDate(endDate);
            d.setStartDate(startDate);
            d.setPutCode(1L);
            setOrg(d);
            affs.add(d);
            Education e = new Education();
            e.setDepartmentName("education");
            e.setEndDate(endDate);
            e.setStartDate(startDate);
            e.setPutCode(2L);
            setOrg(e);
            affs.add(e);
            Employment emp = new Employment();
            emp.setDepartmentName("employment");
            emp.setEndDate(endDate);
            emp.setStartDate(startDate);
            emp.setPutCode(3L);
            setOrg(emp);
            affs.add(emp);
            InvitedPosition i = new InvitedPosition();
            i.setDepartmentName("invited position");
            i.setEndDate(endDate);
            i.setStartDate(startDate);
            i.setPutCode(4L);
            setOrg(i);
            affs.add(i);
            Membership m = new Membership();
            m.setDepartmentName("membership");
            m.setEndDate(endDate);
            m.setStartDate(startDate);
            m.setPutCode(5L);
            setOrg(m);
            affs.add(m);
            Qualification q = new Qualification();
            q.setDepartmentName("qualification");
            q.setEndDate(endDate);
            q.setStartDate(startDate);
            q.setPutCode(6L);
            setOrg(q);
            affs.add(q);
            Service s = new Service();
            s.setDepartmentName("service");
            s.setEndDate(endDate);
            s.setStartDate(startDate);
            s.setPutCode(7L);
            setOrg(s);
            affs.add(s);
            return affs;
        }
    });
    when(mockProfileFundingManagerReadOnly.getFundingList(anyString())).thenAnswer(new Answer<List<Funding>>() {

        @Override
        public List<Funding> answer(InvocationOnMock invocation) throws Throwable {
            List<Funding> fundings = new ArrayList<Funding>();
            Funding f = new Funding();
            Amount a = new Amount();
            a.setContent("1000");
            a.setCurrencyCode("$");
            f.setAmount(a);
            FundingTitle t = new FundingTitle();
            t.setTitle(new Title("title"));
            f.setTitle(t);
            setOrg(f);
            f.setPutCode(1L);
            fundings.add(f);
            return fundings;
        }
    });
    when(mockPeerReviewManagerReadOnly.findPeerReviews(anyString())).thenAnswer(new Answer<List<PeerReview>>() {

        @Override
        public List<PeerReview> answer(InvocationOnMock invocation) throws Throwable {
            List<PeerReview> peerReviews = new ArrayList<PeerReview>();
            PeerReview p = new PeerReview();
            setOrg(p);
            p.setPutCode(1L);
            peerReviews.add(p);
            return peerReviews;
        }
    });
    when(mockWorkManagerReadOnly.findWorks(anyString(), any())).thenAnswer(new Answer<List<Work>>() {

        @Override
        public List<Work> answer(InvocationOnMock invocation) throws Throwable {
            List<Work> works = new ArrayList<Work>();
            Work w = new Work();
            WorkTitle t = new WorkTitle();
            t.setTitle(new Title("title"));
            w.setPutCode(1L);
            works.add(w);
            return works;
        }
    });
    when(mockWorkManagerReadOnly.getLastModified(anyString())).thenReturn(0L);
    when(mockWorkEntityCacheManager.retrieveWorkLastModifiedList(anyString(), anyLong())).thenAnswer(new Answer<List<WorkLastModifiedEntity>>() {

        @Override
        public List<WorkLastModifiedEntity> answer(InvocationOnMock invocation) throws Throwable {
            List<WorkLastModifiedEntity> works = new ArrayList<WorkLastModifiedEntity>();
            WorkLastModifiedEntity w = new WorkLastModifiedEntity();
            w.setId(1L);
            w.setOrcid(ORCID);
            w.setLastModified(new Date());
            works.add(w);
            return works;
        }
    });
}
Also used : FamilyName(org.orcid.jaxb.model.v3.dev1.record.FamilyName) Funding(org.orcid.jaxb.model.v3.dev1.record.Funding) InvitedPosition(org.orcid.jaxb.model.v3.dev1.record.InvitedPosition) CreditName(org.orcid.jaxb.model.v3.dev1.common.CreditName) FamilyName(org.orcid.jaxb.model.v3.dev1.record.FamilyName) Name(org.orcid.jaxb.model.v3.dev1.record.Name) Month(org.orcid.jaxb.model.v3.dev1.common.Month) WorkLastModifiedEntity(org.orcid.persistence.jpa.entities.WorkLastModifiedEntity) Education(org.orcid.jaxb.model.v3.dev1.record.Education) Employment(org.orcid.jaxb.model.v3.dev1.record.Employment) GivenNames(org.orcid.jaxb.model.v3.dev1.record.GivenNames) Biography(org.orcid.jaxb.model.v3.dev1.record.Biography) Work(org.orcid.jaxb.model.v3.dev1.record.Work) Membership(org.orcid.jaxb.model.v3.dev1.record.Membership) List(java.util.List) ArrayList(java.util.ArrayList) Distinction(org.orcid.jaxb.model.v3.dev1.record.Distinction) Affiliation(org.orcid.jaxb.model.v3.dev1.record.Affiliation) Amount(org.orcid.jaxb.model.v3.dev1.common.Amount) CreditName(org.orcid.jaxb.model.v3.dev1.common.CreditName) FuzzyDate(org.orcid.jaxb.model.v3.dev1.common.FuzzyDate) Service(org.orcid.jaxb.model.v3.dev1.record.Service) Title(org.orcid.jaxb.model.v3.dev1.common.Title) FundingTitle(org.orcid.jaxb.model.v3.dev1.record.FundingTitle) WorkTitle(org.orcid.jaxb.model.v3.dev1.record.WorkTitle) Date(java.util.Date) FuzzyDate(org.orcid.jaxb.model.v3.dev1.common.FuzzyDate) Qualification(org.orcid.jaxb.model.v3.dev1.record.Qualification) Year(org.orcid.jaxb.model.v3.dev1.common.Year) WorkTitle(org.orcid.jaxb.model.v3.dev1.record.WorkTitle) InvocationOnMock(org.mockito.invocation.InvocationOnMock) FundingTitle(org.orcid.jaxb.model.v3.dev1.record.FundingTitle) Person(org.orcid.jaxb.model.v3.dev1.record.Person) Day(org.orcid.jaxb.model.v3.dev1.common.Day) PeerReview(org.orcid.jaxb.model.v3.dev1.record.PeerReview) Before(org.junit.Before)

Example 77 with Works

use of org.orcid.jaxb.model.v3.dev1.record.summary.Works in project ORCID-Source by ORCID.

the class GetMyDataControllerTest method testDownload.

@Test
public void testDownload() throws JAXBException, IOException {
    SecurityContextHolder.getContext().setAuthentication(getAuthentication());
    MockHttpServletResponse response = new MockHttpServletResponse();
    getMyDataController.getMyData(response);
    byte[] content = response.getContentAsByteArray();
    ByteArrayInputStream is = new ByteArrayInputStream(content);
    ZipInputStream zip = new ZipInputStream(is);
    ZipEntry zipEntry = zip.getNextEntry();
    JAXBContext jaxbContext1 = JAXBContext.newInstance(Person.class, Distinction.class, Education.class, Employment.class, InvitedPosition.class, Membership.class, Qualification.class, Service.class, Funding.class, PeerReview.class, Work.class);
    Unmarshaller u = jaxbContext1.createUnmarshaller();
    boolean personFound = false;
    boolean distinctionFound = false;
    boolean educationFound = false;
    boolean employmentFound = false;
    boolean invitedPositionFound = false;
    boolean membershipFound = false;
    boolean qualificationFound = false;
    boolean serviceFound = false;
    boolean fundingFound = false;
    boolean peerReviewFound = false;
    boolean workFound = false;
    while (zipEntry != null) {
        String fileName = zipEntry.getName();
        byte[] buffer = new byte[1024];
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        int len;
        while ((len = zip.read(buffer)) > 0) {
            out.write(buffer, 0, len);
        }
        ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
        if (fileName.equals("person.xml")) {
            Person x = (Person) u.unmarshal(in);
            assertNotNull(x);
            assertEquals("Biography", x.getBiography().getContent());
            assertEquals(Visibility.LIMITED, x.getBiography().getVisibility());
            personFound = true;
        } else if (fileName.startsWith("affiliations/distinctions")) {
            assertEquals("affiliations/distinctions/1.xml", fileName);
            Distinction x = (Distinction) u.unmarshal(in);
            assertNotNull(x);
            assertEquals("distinction", x.getDepartmentName());
            assertEquals(Long.valueOf(1), x.getPutCode());
            validateOrg(x);
            distinctionFound = true;
        } else if (fileName.startsWith("affiliations/educations")) {
            assertEquals("affiliations/educations/2.xml", fileName);
            Education x = (Education) u.unmarshal(in);
            assertNotNull(x);
            assertEquals("education", x.getDepartmentName());
            assertEquals(Long.valueOf(2), x.getPutCode());
            validateOrg(x);
            educationFound = true;
        } else if (fileName.startsWith("affiliations/employments")) {
            assertEquals("affiliations/employments/3.xml", fileName);
            Employment x = (Employment) u.unmarshal(in);
            assertNotNull(x);
            assertEquals("employment", x.getDepartmentName());
            assertEquals(Long.valueOf(3), x.getPutCode());
            validateOrg(x);
            employmentFound = true;
        } else if (fileName.startsWith("affiliations/invited_positions")) {
            assertEquals("affiliations/invited_positions/4.xml", fileName);
            InvitedPosition x = (InvitedPosition) u.unmarshal(in);
            assertNotNull(x);
            assertEquals("invited position", x.getDepartmentName());
            assertEquals(Long.valueOf(4), x.getPutCode());
            validateOrg(x);
            invitedPositionFound = true;
        } else if (fileName.startsWith("affiliations/memberships")) {
            assertEquals("affiliations/memberships/5.xml", fileName);
            Membership x = (Membership) u.unmarshal(in);
            assertNotNull(x);
            assertEquals("membership", x.getDepartmentName());
            assertEquals(Long.valueOf(5), x.getPutCode());
            validateOrg(x);
            membershipFound = true;
        } else if (fileName.startsWith("affiliations/qualifications")) {
            assertEquals("affiliations/qualifications/6.xml", fileName);
            Qualification x = (Qualification) u.unmarshal(in);
            assertNotNull(x);
            assertEquals("qualification", x.getDepartmentName());
            assertEquals(Long.valueOf(6), x.getPutCode());
            validateOrg(x);
            qualificationFound = true;
        } else if (fileName.startsWith("affiliations/services")) {
            assertEquals("affiliations/services/7.xml", fileName);
            Service x = (Service) u.unmarshal(in);
            assertNotNull(x);
            assertEquals("service", x.getDepartmentName());
            assertEquals(Long.valueOf(7), x.getPutCode());
            validateOrg(x);
            serviceFound = true;
        } else if (fileName.startsWith("fundings")) {
            assertEquals("fundings/1.xml", fileName);
            Funding x = (Funding) u.unmarshal(in);
            assertNotNull(x);
            assertEquals("title", x.getTitle().getTitle().getContent());
            assertEquals("1000", x.getAmount().getContent());
            assertEquals("$", x.getAmount().getCurrencyCode());
            assertEquals(Long.valueOf(1), x.getPutCode());
            validateOrg(x);
            fundingFound = true;
        } else if (fileName.startsWith("peer_reviews")) {
            assertEquals("peer_reviews/1.xml", fileName);
            PeerReview x = (PeerReview) u.unmarshal(in);
            assertNotNull(x);
            validateOrg(x);
            assertEquals(Long.valueOf(1), x.getPutCode());
            peerReviewFound = true;
        } else if (fileName.startsWith("works")) {
            assertEquals("works/1.xml", fileName);
            Work x = (Work) u.unmarshal(in);
            assertNotNull(x);
            assertEquals(Long.valueOf(1), x.getPutCode());
            workFound = true;
        }
        zipEntry = zip.getNextEntry();
    }
    assertTrue(personFound);
    assertTrue(distinctionFound);
    assertTrue(educationFound);
    assertTrue(employmentFound);
    assertTrue(invitedPositionFound);
    assertTrue(membershipFound);
    assertTrue(qualificationFound);
    assertTrue(serviceFound);
    assertTrue(fundingFound);
    assertTrue(peerReviewFound);
    assertTrue(workFound);
    zip.closeEntry();
    zip.close();
}
Also used : Funding(org.orcid.jaxb.model.v3.dev1.record.Funding) InvitedPosition(org.orcid.jaxb.model.v3.dev1.record.InvitedPosition) ZipEntry(java.util.zip.ZipEntry) Service(org.orcid.jaxb.model.v3.dev1.record.Service) JAXBContext(javax.xml.bind.JAXBContext) ArgumentMatchers.anyString(org.mockito.ArgumentMatchers.anyString) ByteArrayOutputStream(java.io.ByteArrayOutputStream) ZipInputStream(java.util.zip.ZipInputStream) Qualification(org.orcid.jaxb.model.v3.dev1.record.Qualification) ByteArrayInputStream(java.io.ByteArrayInputStream) Education(org.orcid.jaxb.model.v3.dev1.record.Education) Employment(org.orcid.jaxb.model.v3.dev1.record.Employment) Work(org.orcid.jaxb.model.v3.dev1.record.Work) Membership(org.orcid.jaxb.model.v3.dev1.record.Membership) Unmarshaller(javax.xml.bind.Unmarshaller) Person(org.orcid.jaxb.model.v3.dev1.record.Person) Distinction(org.orcid.jaxb.model.v3.dev1.record.Distinction) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) PeerReview(org.orcid.jaxb.model.v3.dev1.record.PeerReview) Test(org.junit.Test)

Example 78 with Works

use of org.orcid.jaxb.model.v3.dev1.record.summary.Works in project ORCID-Source by ORCID.

the class WorksPaginator method getWorksPage.

public WorksPage getWorksPage(String orcid, int offset, boolean justPublic, String sort, boolean sortAsc) {
    Works works = worksCacheManager.getGroupedWorks(orcid);
    List<org.orcid.jaxb.model.v3.dev1.record.summary.WorkGroup> filteredGroups = filter(works, justPublic);
    filteredGroups = sort(filteredGroups, sort, sortAsc);
    WorksPage worksPage = new WorksPage();
    worksPage.setTotalGroups(filteredGroups.size());
    List<WorkGroup> workGroups = new ArrayList<>();
    for (int i = offset; i < Math.min(offset + PAGE_SIZE, filteredGroups.size()); i++) {
        org.orcid.jaxb.model.v3.dev1.record.summary.WorkGroup group = filteredGroups.get(i);
        workGroups.add(WorkGroup.valueOf(group, i, orcid));
    }
    worksPage.setWorkGroups(workGroups);
    worksPage.setNextOffset(offset + PAGE_SIZE);
    return worksPage;
}
Also used : ArrayList(java.util.ArrayList) WorkGroup(org.orcid.pojo.WorkGroup) Works(org.orcid.jaxb.model.v3.dev1.record.summary.Works)

Example 79 with Works

use of org.orcid.jaxb.model.v3.dev1.record.summary.Works in project ORCID-Source by ORCID.

the class WorksPaginator method getAllWorks.

public WorksPage getAllWorks(String orcid, String sort, boolean sortAsc) {
    Works works = worksCacheManager.getGroupedWorks(orcid);
    List<org.orcid.jaxb.model.v3.dev1.record.summary.WorkGroup> sortedGroups = sort(works.getWorkGroup(), sort, sortAsc);
    WorksPage worksPage = new WorksPage();
    worksPage.setTotalGroups(sortedGroups.size());
    List<WorkGroup> workGroups = new ArrayList<>();
    for (int i = 0; i < sortedGroups.size(); i++) {
        org.orcid.jaxb.model.v3.dev1.record.summary.WorkGroup group = sortedGroups.get(i);
        workGroups.add(WorkGroup.valueOf(group, i, orcid));
    }
    worksPage.setWorkGroups(workGroups);
    worksPage.setNextOffset(sortedGroups.size());
    return worksPage;
}
Also used : ArrayList(java.util.ArrayList) WorkGroup(org.orcid.pojo.WorkGroup) Works(org.orcid.jaxb.model.v3.dev1.record.summary.Works)

Example 80 with Works

use of org.orcid.jaxb.model.v3.dev1.record.summary.Works in project ORCID-Source by ORCID.

the class OrcidSecurityManager_ActivitiesSummaryTest method testActivitiesSummary_When_SomePrivate_NoSource_ReadLimitedToken.

@Test
public void testActivitiesSummary_When_SomePrivate_NoSource_ReadLimitedToken() {
    SecurityContextTestUtils.setUpSecurityContext(ORCID_1, CLIENT_1, ScopePathType.ACTIVITIES_READ_LIMITED);
    DistinctionSummary d1 = createDistinctionSummary(Visibility.PUBLIC, CLIENT_2);
    DistinctionSummary d2 = createDistinctionSummary(Visibility.PRIVATE, CLIENT_2);
    DistinctionSummary d3 = createDistinctionSummary(Visibility.PRIVATE, CLIENT_2);
    EducationSummary e1 = createEducationSummary(Visibility.PUBLIC, CLIENT_2);
    EducationSummary e2 = createEducationSummary(Visibility.PRIVATE, CLIENT_2);
    EducationSummary e3 = createEducationSummary(Visibility.PRIVATE, CLIENT_2);
    EmploymentSummary em1 = createEmploymentSummary(Visibility.PUBLIC, CLIENT_2);
    EmploymentSummary em2 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_2);
    EmploymentSummary em3 = createEmploymentSummary(Visibility.PRIVATE, CLIENT_2);
    InvitedPositionSummary i1 = createInvitedPositionSummary(Visibility.PUBLIC, CLIENT_2);
    InvitedPositionSummary i2 = createInvitedPositionSummary(Visibility.PRIVATE, CLIENT_2);
    InvitedPositionSummary i3 = createInvitedPositionSummary(Visibility.PRIVATE, CLIENT_2);
    MembershipSummary m1 = createMembershipSummary(Visibility.PUBLIC, CLIENT_2);
    MembershipSummary m2 = createMembershipSummary(Visibility.PRIVATE, CLIENT_2);
    MembershipSummary m3 = createMembershipSummary(Visibility.PRIVATE, CLIENT_2);
    QualificationSummary q1 = createQualificationSummary(Visibility.PUBLIC, CLIENT_2);
    QualificationSummary q2 = createQualificationSummary(Visibility.PRIVATE, CLIENT_2);
    QualificationSummary q3 = createQualificationSummary(Visibility.PRIVATE, CLIENT_2);
    ServiceSummary s1 = createServiceSummary(Visibility.PUBLIC, CLIENT_2);
    ServiceSummary s2 = createServiceSummary(Visibility.PRIVATE, CLIENT_2);
    ServiceSummary s3 = createServiceSummary(Visibility.PRIVATE, CLIENT_2);
    FundingSummary f1 = createFundingSummary(Visibility.PUBLIC, 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.PUBLIC, 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.PUBLIC, 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(e1, e2, e3));
    as.setEmployments(createEmployments(em1, em2, em3));
    as.setFundings(createFundings(f1, f2, f3));
    as.setPeerReviews(createPeerReviews(p1, p2, p3));
    as.setWorks(createWorks(w1, w2, w3));
    as.setDistinctions(createDistinctions(d1, d2, d3));
    as.setInvitedPositions(createInvitedPositions(i1, i2, i3));
    as.setMemberships(createMemberships(m1, m2, m3));
    as.setQualifications(createQualifications(q1, q2, q3));
    as.setServices(createServices(s1, s2, s3));
    orcidSecurityManager.checkAndFilter(ORCID_1, as);
    assertNotNull(as);
    // Check distinctions
    assertEquals(1, as.getDistinctions().getSummaries().size());
    assertTrue(as.getDistinctions().getSummaries().contains(d1));
    assertFalse(as.getDistinctions().getSummaries().contains(d2));
    assertFalse(as.getDistinctions().getSummaries().contains(d3));
    // Check invited positions
    assertEquals(1, as.getInvitedPositions().getSummaries().size());
    assertTrue(as.getInvitedPositions().getSummaries().contains(i1));
    assertFalse(as.getInvitedPositions().getSummaries().contains(i2));
    assertFalse(as.getInvitedPositions().getSummaries().contains(i3));
    // Check memberships
    assertEquals(1, as.getMemberships().getSummaries().size());
    assertTrue(as.getMemberships().getSummaries().contains(m1));
    assertFalse(as.getMemberships().getSummaries().contains(m2));
    assertFalse(as.getMemberships().getSummaries().contains(m3));
    // Check qualifications
    assertEquals(1, as.getQualifications().getSummaries().size());
    assertTrue(as.getQualifications().getSummaries().contains(q1));
    assertFalse(as.getQualifications().getSummaries().contains(q2));
    assertFalse(as.getQualifications().getSummaries().contains(q3));
    // Check services
    assertEquals(1, as.getServices().getSummaries().size());
    assertTrue(as.getServices().getSummaries().contains(s1));
    assertFalse(as.getServices().getSummaries().contains(s2));
    assertFalse(as.getServices().getSummaries().contains(s3));
    // Check educations
    assertEquals(1, as.getEducations().getSummaries().size());
    assertTrue(as.getEducations().getSummaries().contains(e1));
    assertFalse(as.getEducations().getSummaries().contains(e2));
    assertFalse(as.getEducations().getSummaries().contains(e3));
    // Check employments
    assertEquals(1, as.getEmployments().getSummaries().size());
    assertTrue(as.getEmployments().getSummaries().contains(em1));
    assertFalse(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());
    assertTrue(as.getFundings().getFundingGroup().get(0).getActivities().contains(f1));
    assertFalse(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());
    assertTrue(as.getFundings().getFundingGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_1)));
    assertFalse(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());
    assertTrue(as.getPeerReviews().getPeerReviewGroup().get(0).getActivities().contains(p1));
    assertFalse(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());
    assertTrue(as.getWorks().getWorkGroup().get(0).getActivities().contains(w1));
    assertFalse(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());
    assertTrue(as.getWorks().getWorkGroup().get(0).getIdentifiers().getExternalIdentifier().contains(getExtId(EXTID_1)));
    assertFalse(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)));
}
Also used : WorkSummary(org.orcid.jaxb.model.v3.dev1.record.summary.WorkSummary) InvitedPositionSummary(org.orcid.jaxb.model.v3.dev1.record.summary.InvitedPositionSummary) QualificationSummary(org.orcid.jaxb.model.v3.dev1.record.summary.QualificationSummary) EducationSummary(org.orcid.jaxb.model.v3.dev1.record.summary.EducationSummary) PeerReviewSummary(org.orcid.jaxb.model.v3.dev1.record.summary.PeerReviewSummary) FundingSummary(org.orcid.jaxb.model.v3.dev1.record.summary.FundingSummary) DistinctionSummary(org.orcid.jaxb.model.v3.dev1.record.summary.DistinctionSummary) EmploymentSummary(org.orcid.jaxb.model.v3.dev1.record.summary.EmploymentSummary) MembershipSummary(org.orcid.jaxb.model.v3.dev1.record.summary.MembershipSummary) ServiceSummary(org.orcid.jaxb.model.v3.dev1.record.summary.ServiceSummary) ActivitiesSummary(org.orcid.jaxb.model.v3.dev1.record.summary.ActivitiesSummary) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)83 WorkSummary (org.orcid.jaxb.model.v3.dev1.record.summary.WorkSummary)65 ActivitiesSummary (org.orcid.jaxb.model.v3.dev1.record.summary.ActivitiesSummary)46 FundingSummary (org.orcid.jaxb.model.v3.dev1.record.summary.FundingSummary)38 EducationSummary (org.orcid.jaxb.model.v3.dev1.record.summary.EducationSummary)37 EmploymentSummary (org.orcid.jaxb.model.v3.dev1.record.summary.EmploymentSummary)37 PeerReviewSummary (org.orcid.jaxb.model.v3.dev1.record.summary.PeerReviewSummary)37 Works (org.orcid.jaxb.model.v3.dev1.record.summary.Works)37 DistinctionSummary (org.orcid.jaxb.model.v3.dev1.record.summary.DistinctionSummary)35 InvitedPositionSummary (org.orcid.jaxb.model.v3.dev1.record.summary.InvitedPositionSummary)35 MembershipSummary (org.orcid.jaxb.model.v3.dev1.record.summary.MembershipSummary)35 QualificationSummary (org.orcid.jaxb.model.v3.dev1.record.summary.QualificationSummary)35 ServiceSummary (org.orcid.jaxb.model.v3.dev1.record.summary.ServiceSummary)35 DBUnitTest (org.orcid.test.DBUnitTest)21 Response (javax.ws.rs.core.Response)20 WorkGroup (org.orcid.jaxb.model.v3.dev1.record.summary.WorkGroup)20 PersonExternalIdentifier (org.orcid.jaxb.model.v3.dev1.record.PersonExternalIdentifier)17 ResearcherUrl (org.orcid.jaxb.model.v3.dev1.record.ResearcherUrl)17 Address (org.orcid.jaxb.model.v3.dev1.record.Address)16 Biography (org.orcid.jaxb.model.v3.dev1.record.Biography)16