use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class MemberV3ApiServiceDelegator_ExternalIdentifiersTest method testUpdateExternalIdentifier.
@Test
public void testUpdateExternalIdentifier() {
SecurityContextTestUtils.setUpSecurityContext("4444-4444-4444-4442", ScopePathType.PERSON_READ_LIMITED, ScopePathType.PERSON_UPDATE);
Response response = serviceDelegator.viewExternalIdentifier("4444-4444-4444-4442", 2L);
assertNotNull(response);
PersonExternalIdentifier extId = (PersonExternalIdentifier) response.getEntity();
assertNotNull(extId);
Utils.verifyLastModified(extId.getLastModifiedDate());
LastModifiedDate before = extId.getLastModifiedDate();
assertEquals("Facebook", extId.getType());
assertEquals("abc123", extId.getValue());
assertNotNull(extId.getUrl());
assertEquals("http://www.facebook.com/abc123", extId.getUrl().getValue());
extId.setType("updated-common-name");
extId.setValue("updated-reference");
extId.setUrl(new Url("http://updatedUrl.com"));
response = serviceDelegator.updateExternalIdentifier("4444-4444-4444-4442", 2L, extId);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.viewExternalIdentifier("4444-4444-4444-4442", 2L);
assertNotNull(response);
PersonExternalIdentifier updatedExtId = (PersonExternalIdentifier) response.getEntity();
assertNotNull(updatedExtId);
Utils.verifyLastModified(updatedExtId.getLastModifiedDate());
assertTrue(updatedExtId.getLastModifiedDate().after(before));
assertEquals("updated-common-name", updatedExtId.getType());
assertEquals("updated-reference", updatedExtId.getValue());
assertNotNull(updatedExtId.getUrl());
assertEquals("http://updatedUrl.com", updatedExtId.getUrl().getValue());
// Revert changes so other tests still works
extId.setType("Facebook");
extId.setValue("abc123");
extId.setUrl(new Url("http://www.facebook.com/abc123"));
response = serviceDelegator.updateExternalIdentifier("4444-4444-4444-4442", 2L, extId);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
}
use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class MemberV3ApiServiceDelegator_FundingTest method testUpdateFundingYouAreNotTheSourceOf.
@Test(expected = WrongSourceException.class)
public void testUpdateFundingYouAreNotTheSourceOf() {
SecurityContextTestUtils.setUpSecurityContext("4444-4444-4444-4446", ScopePathType.READ_LIMITED, ScopePathType.ACTIVITIES_UPDATE);
Response response = serviceDelegator.viewFunding("4444-4444-4444-4446", 5L);
assertNotNull(response);
Funding funding = (Funding) response.getEntity();
assertNotNull(funding);
funding.getTitle().getTitle().setContent("Updated funding title");
ExternalID fExtId = new ExternalID();
fExtId.setRelationship(Relationship.PART_OF);
fExtId.setType(FundingExternalIdentifierType.GRANT_NUMBER.value());
fExtId.setUrl(new Url("http://fundingExtId.com"));
fExtId.setValue("new-funding-ext-id");
ExternalIDs fExtIds = new ExternalIDs();
fExtIds.getExternalIdentifier().add(fExtId);
funding.setExternalIdentifiers(fExtIds);
serviceDelegator.updateFunding("4444-4444-4444-4446", 5L, funding);
fail();
}
use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class MemberV3ApiServiceDelegator_FundingTest method testUpdateFunding.
@Test
public void testUpdateFunding() {
SecurityContextTestUtils.setUpSecurityContext("4444-4444-4444-4447", ScopePathType.READ_LIMITED, ScopePathType.ACTIVITIES_UPDATE);
Response response = serviceDelegator.viewFunding("4444-4444-4444-4447", 6L);
assertNotNull(response);
Funding funding = (Funding) response.getEntity();
assertNotNull(funding);
assertEquals("Public Funding # 1", funding.getTitle().getTitle().getContent());
assertEquals("This is the description for funding with id 6", funding.getDescription());
LastModifiedDate before = funding.getLastModifiedDate();
funding.getTitle().getTitle().setContent("Updated funding title");
funding.setDescription("This is an updated description");
ExternalID fExtId = new ExternalID();
fExtId.setRelationship(Relationship.PART_OF);
fExtId.setType(FundingExternalIdentifierType.GRANT_NUMBER.value());
fExtId.setUrl(new Url("http://fundingExtId.com"));
fExtId.setValue("new-funding-ext-id");
ExternalIDs fExtIds = new ExternalIDs();
fExtIds.getExternalIdentifier().add(fExtId);
funding.setExternalIdentifiers(fExtIds);
response = serviceDelegator.updateFunding("4444-4444-4444-4447", 6L, funding);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.viewFunding("4444-4444-4444-4447", 6L);
assertNotNull(response);
funding = (Funding) response.getEntity();
assertNotNull(funding);
Utils.verifyLastModified(funding.getLastModifiedDate());
assertTrue(funding.getLastModifiedDate().after(before));
assertEquals("Updated funding title", funding.getTitle().getTitle().getContent());
assertEquals("This is an updated description", funding.getDescription());
// Rollback changes
funding.getTitle().getTitle().setContent("Public Funding # 1");
funding.setDescription("This is the description for funding with id 6");
response = serviceDelegator.updateFunding("4444-4444-4444-4447", 6L, funding);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
}
use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class MemberV3ApiServiceDelegator_GeneralTest method testOrcidProfileCreate_CAN_CRUDOnUnclaimedAccounts.
@Test
public void testOrcidProfileCreate_CAN_CRUDOnUnclaimedAccounts() {
String orcid = "0000-0000-0000-0001";
SecurityContextTestUtils.setUpSecurityContextForClientOnly();
// Test address
Response response = serviceDelegator.createAddress(orcid, Utils.getAddress());
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
Long putCode = Utils.getPutCode(response);
response = serviceDelegator.viewAddress(orcid, putCode);
assertNotNull(response);
Address address = (Address) response.getEntity();
assertNotNull(address);
address.getCountry().setValue(Iso3166Country.ZW);
response = serviceDelegator.updateAddress(orcid, putCode, address);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deleteAddress(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
// Test education
Education education = (Education) Utils.getAffiliation(AffiliationType.EDUCATION);
response = serviceDelegator.createEducation(orcid, education);
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
putCode = Utils.getPutCode(response);
response = serviceDelegator.viewEducation(orcid, putCode);
assertNotNull(response);
education = (Education) response.getEntity();
assertNotNull(education);
education.setDepartmentName("Updated department name");
response = serviceDelegator.updateEducation(orcid, putCode, education);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deleteAffiliation(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
// Test employment
response = serviceDelegator.createEmployment(orcid, (Employment) Utils.getAffiliation(AffiliationType.EMPLOYMENT));
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
putCode = Utils.getPutCode(response);
response = serviceDelegator.viewEmployment(orcid, putCode);
assertNotNull(response);
Employment employment = (Employment) response.getEntity();
assertNotNull(employment);
employment.setDepartmentName("Updated department name");
response = serviceDelegator.updateEmployment(orcid, putCode, employment);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deleteAffiliation(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
// Test external identifiers
response = serviceDelegator.createExternalIdentifier(orcid, Utils.getPersonExternalIdentifier());
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
putCode = Utils.getPutCode(response);
response = serviceDelegator.viewExternalIdentifier(orcid, putCode);
assertNotNull(response);
PersonExternalIdentifier externalIdentifier = (PersonExternalIdentifier) response.getEntity();
assertNotNull(externalIdentifier);
response = serviceDelegator.updateExternalIdentifier(orcid, putCode, externalIdentifier);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deleteExternalIdentifier(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
// Test funding
response = serviceDelegator.createFunding(orcid, Utils.getFunding());
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
putCode = Utils.getPutCode(response);
response = serviceDelegator.viewFunding(orcid, putCode);
assertNotNull(response);
Funding funding = (Funding) response.getEntity();
assertNotNull(funding);
response = serviceDelegator.updateFunding(orcid, putCode, funding);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deleteFunding(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
// Test keyword
response = serviceDelegator.createKeyword(orcid, Utils.getKeyword());
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
putCode = Utils.getPutCode(response);
response = serviceDelegator.viewKeyword(orcid, putCode);
assertNotNull(response);
Keyword keyword = (Keyword) response.getEntity();
assertNotNull(keyword);
response = serviceDelegator.updateKeyword(orcid, putCode, keyword);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deleteKeyword(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
// Test other names
response = serviceDelegator.createOtherName(orcid, Utils.getOtherName());
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
putCode = Utils.getPutCode(response);
response = serviceDelegator.viewOtherName(orcid, putCode);
assertNotNull(response);
OtherName otherName = (OtherName) response.getEntity();
assertNotNull(otherName);
response = serviceDelegator.updateOtherName(orcid, putCode, otherName);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deleteOtherName(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
// Test peer review
response = serviceDelegator.createPeerReview(orcid, Utils.getPeerReview());
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
putCode = Utils.getPutCode(response);
response = serviceDelegator.viewPeerReview(orcid, putCode);
assertNotNull(response);
PeerReview peerReview = (PeerReview) response.getEntity();
assertNotNull(peerReview);
response = serviceDelegator.updatePeerReview(orcid, putCode, peerReview);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deletePeerReview(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
// Test researcher url
response = serviceDelegator.createResearcherUrl(orcid, Utils.getResearcherUrl());
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
putCode = Utils.getPutCode(response);
response = serviceDelegator.viewResearcherUrl(orcid, putCode);
assertNotNull(response);
ResearcherUrl rUrl = (ResearcherUrl) response.getEntity();
assertNotNull(rUrl);
response = serviceDelegator.updateResearcherUrl(orcid, putCode, rUrl);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deleteResearcherUrl(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
// Test work
response = serviceDelegator.createWork(orcid, Utils.getWork("work # 1 " + System.currentTimeMillis()));
assertNotNull(response);
assertEquals(Response.Status.CREATED.getStatusCode(), response.getStatus());
putCode = Utils.getPutCode(response);
response = serviceDelegator.viewWork(orcid, putCode);
assertNotNull(response);
Work work = (Work) response.getEntity();
assertNotNull(work);
response = serviceDelegator.updateWork(orcid, putCode, work);
assertNotNull(response);
assertEquals(Response.Status.OK.getStatusCode(), response.getStatus());
response = serviceDelegator.deleteWork(orcid, putCode);
assertNotNull(response);
assertEquals(Response.Status.NO_CONTENT.getStatusCode(), response.getStatus());
}
use of org.orcid.jaxb.model.v3.dev1.common.Url in project ORCID-Source by ORCID.
the class MemberV3ApiServiceDelegator_InvitedPositionsTest method testUpdateInvitedPositionDuplicateExternalIDs.
@Test(expected = OrcidDuplicatedActivityException.class)
public void testUpdateInvitedPositionDuplicateExternalIDs() {
SecurityContextTestUtils.setUpSecurityContext(ORCID, ScopePathType.READ_LIMITED, ScopePathType.ACTIVITIES_UPDATE);
ExternalID e1 = new ExternalID();
e1.setRelationship(Relationship.SELF);
e1.setType("erm");
e1.setUrl(new Url("https://orcid.org"));
e1.setValue("err");
ExternalID e2 = new ExternalID();
e2.setRelationship(Relationship.SELF);
e2.setType("err");
e2.setUrl(new Url("http://bbc.co.uk"));
e2.setValue("erm");
ExternalIDs externalIDs = new ExternalIDs();
externalIDs.getExternalIdentifier().add(e1);
externalIDs.getExternalIdentifier().add(e2);
InvitedPosition invitedPosition = (InvitedPosition) Utils.getAffiliation(AffiliationType.INVITED_POSITION);
invitedPosition.setExternalIDs(externalIDs);
Response response = serviceDelegator.createInvitedPosition(ORCID, invitedPosition);
assertNotNull(response);
assertEquals(HttpStatus.SC_CREATED, response.getStatus());
Map<?, ?> map = response.getMetadata();
assertNotNull(map);
assertTrue(map.containsKey("Location"));
List<?> resultWithPutCode = (List<?>) map.get("Location");
Long putCode1 = Long.valueOf(String.valueOf(resultWithPutCode.get(0)));
InvitedPosition another = (InvitedPosition) Utils.getAffiliation(AffiliationType.INVITED_POSITION);
response = serviceDelegator.createInvitedPosition(ORCID, another);
map = response.getMetadata();
assertNotNull(map);
assertTrue(map.containsKey("Location"));
resultWithPutCode = (List<?>) map.get("Location");
Long putCode2 = Long.valueOf(String.valueOf(resultWithPutCode.get(0)));
response = serviceDelegator.viewInvitedPosition(ORCID, putCode2);
another = (InvitedPosition) response.getEntity();
another.setExternalIDs(externalIDs);
try {
serviceDelegator.updateInvitedPosition(ORCID, putCode2, another);
} finally {
serviceDelegator.deleteAffiliation(ORCID, putCode1);
serviceDelegator.deleteAffiliation(ORCID, putCode2);
}
}
Aggregations