use of org.orcid.jaxb.model.v3.dev1.record.Work in project ORCID-Source by ORCID.
the class ActivityValidatorTest method validateWork_emptyContributorCreditNameTest.
@Test(expected = OrcidValidationException.class)
public void validateWork_emptyContributorCreditNameTest() {
Work work = getWork();
work.getWorkContributors().getContributor().get(0).getCreditName().setContent("");
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
}
use of org.orcid.jaxb.model.v3.dev1.record.Work in project ORCID-Source by ORCID.
the class ActivityValidatorTest method validateWork_changeVisibilityTest.
@Test(expected = VisibilityMismatchException.class)
public void validateWork_changeVisibilityTest() {
Work work = getWork();
work.setVisibility(Visibility.LIMITED);
activityValidator.validateWork(work, null, false, true, Visibility.PUBLIC);
}
use of org.orcid.jaxb.model.v3.dev1.record.Work in project ORCID-Source by ORCID.
the class ActivityValidatorTest method getWork.
public Work getWork() {
Work work = new Work();
work.setCountry(new Country(Iso3166Country.US));
work.setJournalTitle(new Title("journal-title"));
work.setLanguageCode("en");
work.setPublicationDate(new PublicationDate(getFuzzyDate()));
work.setShortDescription("short-description");
work.setUrl(new Url("http://test.orcid.org"));
work.setVisibility(Visibility.PUBLIC);
work.setWorkCitation(new Citation("citation", CitationType.FORMATTED_HARVARD));
ContributorAttributes attributes = new ContributorAttributes();
attributes.setContributorRole(ContributorRole.ASSIGNEE);
attributes.setContributorSequence(SequenceType.FIRST);
ContributorOrcid contributorOrcid = new ContributorOrcid();
contributorOrcid.setHost("http://test.orcid.org");
contributorOrcid.setPath("0000-0000-0000-0000");
contributorOrcid.setUri("https://test.orcid.org/0000-0000-0000-0000");
Contributor contributor = new Contributor();
contributor.setContributorAttributes(attributes);
contributor.setContributorOrcid(contributorOrcid);
contributor.setCreditName(new CreditName("credit name"));
contributor.setContributorEmail(new ContributorEmail("email@test.orcid.org"));
WorkContributors contributors = new WorkContributors(Stream.of(contributor).collect(Collectors.toList()));
work.setWorkContributors(contributors);
work.setWorkExternalIdentifiers(getExternalIDs());
work.setWorkTitle(getWorkTitle());
work.setWorkType(WorkType.ARTISTIC_PERFORMANCE);
return work;
}
use of org.orcid.jaxb.model.v3.dev1.record.Work in project ORCID-Source by ORCID.
the class ActivityValidatorTest method validateWork_invalidPublicationDateTest.
@Test
public void validateWork_invalidPublicationDateTest() {
try {
Work work = getWork();
work.getPublicationDate().getYear().setValue("invalid");
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
fail();
} catch (ActivityTypeValidationException e) {
}
try {
Work work = getWork();
work.getPublicationDate().getMonth().setValue("invalid");
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
fail();
} catch (ActivityTypeValidationException e) {
}
try {
Work work = getWork();
work.getPublicationDate().getDay().setValue("invalid");
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
fail();
} catch (ActivityTypeValidationException e) {
}
try {
Work work = getWork();
work.setPublicationDate(new PublicationDate(null, new Month(1), new Day(1)));
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
fail();
} catch (OrcidValidationException e) {
}
try {
Work work = getWork();
work.setPublicationDate(new PublicationDate(new Year(2017), null, new Day(1)));
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
fail();
} catch (OrcidValidationException e) {
}
try {
Work work = getWork();
work.setPublicationDate(new PublicationDate(null, null, new Day(1)));
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
fail();
} catch (OrcidValidationException e) {
}
try {
Work work = getWork();
// Invalid 2 digits year
work.setPublicationDate(new PublicationDate(new Year(25), new Month(1), new Day(1)));
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
fail();
} catch (OrcidValidationException e) {
}
try {
Work work = getWork();
// Invalid 3 digits month
work.setPublicationDate(new PublicationDate(new Year(2017), new Month(100), new Day(1)));
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
fail();
} catch (OrcidValidationException e) {
}
try {
Work work = getWork();
// Invalid 3 digits day
work.setPublicationDate(new PublicationDate(new Year(2017), new Month(1), new Day(100)));
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
fail();
} catch (OrcidValidationException e) {
}
Work work = getWork();
work.setPublicationDate(new PublicationDate(new Year(2017), new Month(1), null));
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
work = getWork();
work.setPublicationDate(new PublicationDate(new Year(2017), null, null));
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
work = getWork();
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
}
use of org.orcid.jaxb.model.v3.dev1.record.Work in project ORCID-Source by ORCID.
the class ActivityValidatorTest method validateWork_emptyTranslatedTitleWithLanguageCodeTest.
@Test(expected = OrcidValidationException.class)
public void validateWork_emptyTranslatedTitleWithLanguageCodeTest() {
Work work = getWork();
work.getWorkTitle().getTranslatedTitle().setContent(null);
activityValidator.validateWork(work, null, true, true, Visibility.PUBLIC);
}
Aggregations