use of eu.europeana.metis.schema.jibx._Object in project metis-framework by europeana.
the class RdfWrapperTest method testGetFirstResourceOfType.
@Test
void testGetFirstResourceOfType() {
// Setup tests - create RDF and aggregations
final Aggregation firstAggregation = new Aggregation();
final Aggregation middleAggregation = new Aggregation();
final Aggregation lastAggregation = new Aggregation();
final RDF rdf = new RDF();
rdf.setAggregationList(Arrays.asList(null, firstAggregation, middleAggregation, lastAggregation));
final RdfWrapper instance = new RdfWrapper(rdf);
// Test - try with non-existing values
assertFalse(instance.getFirstResourceOfType(UrlType.OBJECT).isPresent());
assertFalse(instance.getFirstResourceOfType(UrlType.HAS_VIEW).isPresent());
assertFalse(instance.getFirstResourceOfType(UrlType.IS_SHOWN_AT).isPresent());
assertFalse(instance.getFirstResourceOfType(UrlType.IS_SHOWN_BY).isPresent());
// Setup tests - object links
final String firstObject = "firstObject";
final String lastObject = "lastObject";
firstAggregation.setObject(new _Object());
firstAggregation.getObject().setResource(firstObject);
middleAggregation.setObject(new _Object());
middleAggregation.getObject().setResource(lastObject);
lastAggregation.setObject(null);
// Setup tests - hasView links
final String firstHasView = "firstHasView";
final String middleHasView = "middleHasView";
final String lastHasView = "lastHasView";
firstAggregation.setHasViewList(null);
middleAggregation.setHasViewList(Arrays.asList(null, new HasView(), new HasView(), new HasView()));
middleAggregation.getHasViewList().get(2).setResource(firstHasView);
middleAggregation.getHasViewList().get(3).setResource(middleHasView);
lastAggregation.setHasViewList(Collections.singletonList(new HasView()));
lastAggregation.getHasViewList().get(0).setResource(lastHasView);
// Setup tests - isShownAt links
final String firstIsShownAt = "firstIsShownAt";
final String lastIsShownAt = "lastIsShownAt";
firstAggregation.setIsShownAt(new IsShownAt());
middleAggregation.setIsShownAt(new IsShownAt());
middleAggregation.getIsShownAt().setResource(firstIsShownAt);
lastAggregation.setIsShownAt(new IsShownAt());
lastAggregation.getIsShownAt().setResource(lastIsShownAt);
// Setup tests - isShownBy links
final String firstIsShownBy = "firstIsShownBy";
final String lastIsShownBy = "lastIsShownBy";
firstAggregation.setIsShownBy(new IsShownBy());
firstAggregation.getIsShownBy().setResource(" ");
middleAggregation.setIsShownBy(new IsShownBy());
middleAggregation.getIsShownBy().setResource(firstIsShownBy);
lastAggregation.setIsShownBy(new IsShownBy());
lastAggregation.getIsShownBy().setResource(lastIsShownBy);
// Test - try with existing values
assertEquals(firstObject, instance.getFirstResourceOfType(UrlType.OBJECT).orElse(null));
assertEquals(firstHasView, instance.getFirstResourceOfType(UrlType.HAS_VIEW).orElse(null));
assertEquals(firstIsShownAt, instance.getFirstResourceOfType(UrlType.IS_SHOWN_AT).orElse(null));
assertEquals(firstIsShownBy, instance.getFirstResourceOfType(UrlType.IS_SHOWN_BY).orElse(null));
}
use of eu.europeana.metis.schema.jibx._Object in project metis-framework by europeana.
the class EnrichmentUtilsTest method testSetAdditionalDataCompletenessMoreThanZero.
@Test
void testSetAdditionalDataCompletenessMoreThanZero() {
Aggregation aggregation = spy(new Aggregation());
Choice dateChoice = new Choice();
Date date = new Date();
Choice titleChoice = new Choice();
Title title = new Title();
date.setString("1990");
dateChoice.setDate(date);
title.setString("The Sudbury Neutrino Observatory: Observation of Flavor Change for Solar Neutrinos");
titleChoice.setTitle(title);
ArrayList<Choice> choices = new ArrayList<>();
choices.add(dateChoice);
choices.add(titleChoice);
PROXY_PROVIDER.setChoiceList(choices);
ArrayList<ProxyType> proxyList = new ArrayList<>();
proxyList.add(PROXY_EUROPEANA);
proxyList.add(PROXY_PROVIDER);
TEST_RDF.setProxyList(proxyList);
_Object object = new _Object();
object.setResource("/260/_kmo_av_sid_45006");
doReturn(object).when(aggregation).getObject();
doReturn(Collections.singletonList(aggregation)).when(TEST_RDF).getAggregationList();
EnrichmentUtils.setAdditionalData(TEST_RDF);
EuropeanaAggregationType aggregationTypeResult = TEST_RDF.getEuropeanaAggregationList().get(0);
assertTrue(Integer.parseInt(aggregationTypeResult.getCompleteness().getString()) > 0);
}
Aggregations