source: vlo/trunk/vlo_importer/src/test/java/eu/clarin/cmdi/vlo/importer/FacetMappingFactoryTest.java @ 2834

Last change on this file since 2834 was 2834, checked in by keeloo, 11 years ago

Temporarily removed references to the tag facet from FacetConstants?, FacetConcepts? and FacetMappingFactoryTest?. This should enable the 2.13 beta release. Some minor changes regarding default parameter settings were applied to VloConfig? and VloConfigTest?.

File size: 16.1 KB
Line 
1package eu.clarin.cmdi.vlo.importer;
2
3import static org.junit.Assert.assertEquals;
4
5import java.util.List;
6
7import org.junit.Test;
8import org.slf4j.Logger;
9import org.slf4j.LoggerFactory;
10
11import eu.clarin.cmdi.vlo.FacetConstants;
12
13
14public class FacetMappingFactoryTest {
15
16    private final static Logger LOG = LoggerFactory.getLogger(FacetMappingFactoryTest.class);
17
18    @Test
19    public void testGetImdiMapping() {
20        FacetMapping facetMapping = FacetMappingFactory
21                .getFacetMapping("http://catalog.clarin.eu/ds/ComponentRegistry/rest/registry/profiles/clarin.eu:cr1:p_1271859438204/xsd");//IMDI Session profile xsd
22        List<FacetConfiguration> facets = facetMapping.getFacets();
23        assertEquals(17, facets.size());
24        int index = 0;
25        FacetConfiguration mapping = facets.get(index++);
26        assertEquals(FacetConstants.FIELD_ID, mapping.getName());
27        assertEquals(1, mapping.getPatterns().size());
28        assertEquals("/c:CMD/c:Header/c:MdSelfLink/text()", mapping.getPatterns().get(0));
29        mapping = facets.get(index++);
30        assertEquals(FacetConstants.FIELD_COLLECTION, mapping.getName());
31        assertEquals(1, mapping.getPatterns().size());
32        mapping = facets.get(index++);
33        assertEquals(FacetConstants.FIELD_PROJECT_NAME, mapping.getName());
34        assertEquals(2, mapping.getPatterns().size());
35        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Project/c:Name/text()", mapping.getPatterns().get(0));
36        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Project/c:Title/text()", mapping.getPatterns().get(1));
37        mapping = facets.get(index++);
38        assertEquals(FacetConstants.FIELD_NAME, mapping.getName());
39        assertEquals(2, mapping.getPatterns().size());
40        assertEquals("/c:CMD/c:Components/c:Session/c:Name/text()", mapping.getPatterns().get(0));
41        assertEquals("/c:CMD/c:Components/c:Session/c:Title/text()", mapping.getPatterns().get(1));
42        mapping = facets.get(index++);
43        assertEquals(FacetConstants.FIELD_YEAR, mapping.getName());
44        assertEquals(2, mapping.getPatterns().size());
45        assertEquals("/c:CMD/c:Components/c:Session/c:Date/text()", mapping.getPatterns().get(0));
46        mapping = facets.get(index++);
47        assertEquals(FacetConstants.FIELD_CONTINENT, mapping.getName());
48        assertEquals(1, mapping.getPatterns().size());
49        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Location/c:Continent/text()", mapping.getPatterns().get(0));
50        mapping = facets.get(index++);
51        assertEquals(FacetConstants.FIELD_COUNTRY, mapping.getName());
52        assertEquals(1, mapping.getPatterns().size());
53        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Location/c:Country/text()", mapping.getPatterns().get(0));
54        mapping = facets.get(index++);
55        assertEquals(FacetConstants.FIELD_LANGUAGE, mapping.getName());
56        assertEquals(3, mapping.getPatterns().size());
57        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Content/c:Content_Languages/c:Content_Language/c:Id/text()", mapping.getPatterns().get(0));
58        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Actors/c:Actor/c:Actor_Languages/c:Actor_Language/c:Id/text()", mapping.getPatterns().get(1));
59        assertEquals("/c:CMD/c:Components/c:Session/c:Resources/c:WrittenResource/c:LanguageId/text()", mapping.getPatterns().get(2));
60        mapping = facets.get(index++);
61        assertEquals(FacetConstants.FIELD_LANGUAGES, mapping.getName());
62        mapping = facets.get(index++);
63        assertEquals(FacetConstants.FIELD_ORGANISATION, mapping.getName());
64        assertEquals(6, mapping.getPatterns().size());
65        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Project/c:Contact/c:Organisation/text()", mapping.getPatterns().get(0));
66        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Actors/c:Actor/c:Contact/c:Organisation/text()", mapping.getPatterns().get(1));
67        assertEquals("/c:CMD/c:Components/c:Session/c:Resources/c:MediaFile/c:Access/c:Contact/c:Organisation/text()", mapping.getPatterns().get(2));
68        assertEquals("/c:CMD/c:Components/c:Session/c:Resources/c:WrittenResource/c:Access/c:Contact/c:Organisation/text()", mapping.getPatterns().get(3));
69        assertEquals("/c:CMD/c:Components/c:Session/c:Resources/c:Source/c:Access/c:Contact/c:Organisation/text()", mapping.getPatterns().get(4));
70        assertEquals("/c:CMD/c:Components/c:Session/c:Resources/c:Anonyms/c:Access/c:Contact/c:Organisation/text()", mapping.getPatterns().get(5));
71        mapping = facets.get(index++);
72        assertEquals(FacetConstants.FIELD_GENRE, mapping.getName());
73        assertEquals(1, mapping.getPatterns().size());
74        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Content/c:Genre/text()", mapping.getPatterns().get(0));
75        mapping = facets.get(index++);
76        assertEquals(FacetConstants.FIELD_SUBJECT, mapping.getName());
77        assertEquals(1, mapping.getPatterns().size());
78        assertEquals("/c:CMD/c:Components/c:Session/c:MDGroup/c:Content/c:Subject/text()", mapping.getPatterns().get(0));
79        mapping = facets.get(index++);
80        assertEquals(FacetConstants.FIELD_DESCRIPTION, mapping.getName());
81        assertEquals(18, mapping.getPatterns().size());
82        assertEquals("/c:CMD/c:Components/c:Session/c:descriptions/c:Description/text()", mapping.getPatterns().get(0));
83        mapping = facets.get(index++);
84        assertEquals(FacetConstants.FIELD_RESOURCE_TYPE, mapping.getName());
85        assertEquals(1, mapping.getPatterns().size());
86        mapping = facets.get(index++);
87        assertEquals("/c:CMD/c:Header/c:MdCollectionDisplayName/text()", mapping.getPatterns().get(0));
88        assertEquals(1, mapping.getPatterns().size());
89        mapping = facets.get(index++);
90        assertEquals("/c:CMD//text()", mapping.getPatterns().get(0));
91        assertEquals(1, mapping.getPatterns().size());
92        mapping = facets.get(index++);
93        assertEquals("/c:CMD/c:Header/c:MdProfile/text()", mapping.getPatterns().get(0));
94        assertEquals(1, mapping.getPatterns().size());
95        assertEquals("check to see we tested them all", facets.size(), index);
96    }
97
98    @Test
99    public void testGetOlacMapping() {
100        FacetMapping facetMapping = FacetMappingFactory
101                .getFacetMapping("http://catalog.clarin.eu/ds/ComponentRegistry/rest/registry/profiles/clarin.eu:cr1:p_1288172614026/xsd");
102        List<FacetConfiguration> facets = facetMapping.getFacets();
103        assertEquals(14, facets.size());
104        int index = 0;
105        FacetConfiguration mapping = facets.get(index++);
106        assertEquals(FacetConstants.FIELD_ID, mapping.getName());
107        assertEquals(1, mapping.getPatterns().size());
108        assertEquals("/c:CMD/c:Header/c:MdSelfLink/text()", mapping.getPatterns().get(0));
109        mapping = facets.get(index++);
110        assertEquals(FacetConstants.FIELD_COLLECTION, mapping.getName());
111        assertEquals(1, mapping.getPatterns().size());
112        assertEquals("/c:CMD/c:Header/c:MdCollectionDisplayName/text()", mapping.getPatterns().get(0));
113        mapping = facets.get(index++);
114        assertEquals(FacetConstants.FIELD_NAME, mapping.getName());
115        assertEquals(1, mapping.getPatterns().size());
116        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:title/text()", mapping.getPatterns().get(0));
117        mapping = facets.get(index++);
118        assertEquals(FacetConstants.FIELD_COUNTRY, mapping.getName());
119        assertEquals(2, mapping.getPatterns().size());
120        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:spatial[@dcterms-type=\"ISO3166\"]/text()", mapping.getPatterns().get(0));
121        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:coverage[@dcterms-type=\"ISO3166\"]/text()", mapping.getPatterns().get(1));
122        mapping = facets.get(index++);
123        assertEquals(FacetConstants.FIELD_LANGUAGE, mapping.getName());
124        assertEquals(3, mapping.getPatterns().size());
125        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:language/@olac-language", mapping.getPatterns().get(0));
126        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:subject/@olac-language", mapping.getPatterns().get(1));
127        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtCommon/c:Languages/c:ISO639/c:iso-639-3-code/text()", mapping.getPatterns().get(2));
128        mapping = facets.get(index++);
129        assertEquals(FacetConstants.FIELD_LANGUAGES, mapping.getName());
130        mapping = facets.get(index++);
131        assertEquals(FacetConstants.FIELD_ORGANISATION, mapping.getName());
132        assertEquals(1, mapping.getPatterns().size());
133        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:publisher/text()", mapping.getPatterns().get(0));
134        mapping = facets.get(index++);
135        assertEquals(FacetConstants.FIELD_GENRE, mapping.getName());
136        assertEquals(1, mapping.getPatterns().size());
137        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:type/@olac-linguistic-type", mapping.getPatterns().get(0));
138        mapping = facets.get(index++);
139        assertEquals(FacetConstants.FIELD_SUBJECT, mapping.getName());
140        assertEquals(1, mapping.getPatterns().size());
141        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:subject/text()", mapping.getPatterns().get(0));
142        //assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:subject[@dcterms-type=\"LCSH\"]/text()", mapping.getPatterns().get(1));
143        mapping = facets.get(index++);
144        assertEquals(FacetConstants.FIELD_DESCRIPTION, mapping.getName());
145        assertEquals(1, mapping.getPatterns().size());
146        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:description/text()", mapping.getPatterns().get(0));
147        mapping = facets.get(index++);
148        assertEquals(FacetConstants.FIELD_RESOURCE_TYPE, mapping.getName());
149        assertEquals(1, mapping.getPatterns().size());
150        mapping = facets.get(index++);
151        assertEquals("/c:CMD/c:Header/c:MdCollectionDisplayName/text()", mapping.getPatterns().get(0));
152        assertEquals(1, mapping.getPatterns().size());
153        mapping = facets.get(index++);
154        assertEquals("/c:CMD//text()", mapping.getPatterns().get(0));
155        assertEquals(1, mapping.getPatterns().size());
156        mapping = facets.get(index++);
157        assertEquals("/c:CMD/c:Header/c:MdProfile/text()", mapping.getPatterns().get(0));
158        assertEquals(1, mapping.getPatterns().size());
159
160        assertEquals("check to see we tested them all", facets.size(), index);
161    }
162
163    @Test
164    public void testGetLrtMapping() {
165        FacetMapping facetMapping = FacetMappingFactory
166                .getFacetMapping("http://catalog.clarin.eu/ds/ComponentRegistry/rest/registry/profiles/clarin.eu:cr1:p_1289827960126/xsd");
167        List<FacetConfiguration> facets = facetMapping.getFacets();
168        assertEquals(15, facets.size());
169        int index = 0;
170        FacetConfiguration mapping = facets.get(index++);
171        assertEquals(FacetConstants.FIELD_ID, mapping.getName());
172        assertEquals(1, mapping.getPatterns().size());
173        assertEquals("/c:CMD/c:Header/c:MdSelfLink/text()", mapping.getPatterns().get(0));
174        mapping = facets.get(index++);
175        assertEquals(FacetConstants.FIELD_COLLECTION, mapping.getName());
176        assertEquals(1, mapping.getPatterns().size());
177        mapping = facets.get(index++);
178        assertEquals(FacetConstants.FIELD_NAME, mapping.getName());
179        assertEquals(1, mapping.getPatterns().size());
180        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtCommon/c:ResourceName/text()", mapping.getPatterns().get(0));
181        mapping = facets.get(index++);
182        assertEquals(FacetConstants.FIELD_YEAR, mapping.getName());
183        assertEquals(3, mapping.getPatterns().size());
184        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtCommon/c:FinalizationYearResourceCreation/text()", mapping.getPatterns().get(0));
185        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtLexiconDetails/c:Date/text()", mapping.getPatterns().get(1));
186        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtServiceDetails/c:Date/text()", mapping.getPatterns().get(2));
187        mapping = facets.get(index++);
188        assertEquals(FacetConstants.FIELD_COUNTRY, mapping.getName());
189        assertEquals(2, mapping.getPatterns().size());
190        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtCommon/c:Countries/c:Country/text()", mapping.getPatterns().get(0));
191        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtCommon/c:Countries/c:Country/c:Code/text()", mapping.getPatterns().get(1));
192        mapping = facets.get(index++);
193        assertEquals(FacetConstants.FIELD_LANGUAGE, mapping.getName());
194
195
196        //LOG.info("XXXXX: " + mapping.getPatterns().get(0));
197        assertEquals(1, mapping.getPatterns().size());
198//        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:language/@olac-language", mapping.getPatterns().get(0));
199//        assertEquals("/c:CMD/c:Components/c:OLAC-DcmiTerms/c:subject/@olac-language", mapping.getPatterns().get(1));
200        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtCommon/c:Languages/c:ISO639/c:iso-639-3-code/text()", mapping.getPatterns().get(0));
201        mapping = facets.get(index++);
202        assertEquals(FacetConstants.FIELD_LANGUAGES, mapping.getName());
203        mapping = facets.get(index++);
204        assertEquals(FacetConstants.FIELD_ORGANISATION, mapping.getName());
205        assertEquals(1, mapping.getPatterns().size());
206        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtCommon/c:Institute/text()", mapping.getPatterns().get(0));
207        mapping = facets.get(index++);
208        assertEquals(FacetConstants.FIELD_GENRE, mapping.getName());
209        assertEquals(1, mapping.getPatterns().size());
210        mapping = facets.get(index++);
211        assertEquals(FacetConstants.FIELD_SUBJECT, mapping.getName());
212        assertEquals(2, mapping.getPatterns().size());
213        mapping = facets.get(index++);
214        assertEquals(FacetConstants.FIELD_DESCRIPTION, mapping.getName());
215        assertEquals(2, mapping.getPatterns().size());
216        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtCommon/c:Description/text()", mapping.getPatterns().get(0));
217        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtIPR/c:Description/text()", mapping.getPatterns().get(1));
218        mapping = facets.get(index++);
219        assertEquals(FacetConstants.FIELD_RESOURCE_TYPE, mapping.getName());
220        assertEquals(2, mapping.getPatterns().size());
221        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:LrtCommon/c:ResourceType/text()", mapping.getPatterns().get(0));
222        mapping = facets.get(index++);
223        assertEquals("/c:CMD/c:Header/c:MdCollectionDisplayName/text()", mapping.getPatterns().get(0));
224        assertEquals(1, mapping.getPatterns().size());
225        mapping = facets.get(index++);
226        assertEquals("/c:CMD//text()", mapping.getPatterns().get(0));
227        assertEquals(1, mapping.getPatterns().size());
228        mapping = facets.get(index++);
229        assertEquals("/c:CMD/c:Header/c:MdProfile/text()", mapping.getPatterns().get(0));
230        assertEquals(1, mapping.getPatterns().size());
231//        mapping = facets.get(index++);
232//        assertEquals(FacetConstants.FIELD_TAG, mapping.getName());
233//        assertEquals(1, mapping.getPatterns().size());
234//        assertEquals("/c:CMD/c:Components/c:LrtInventoryResource/c:tags/c:tag/text()", mapping.getPatterns().get(0));
235        assertEquals("check to see we tested them all", facets.size(), index);
236    }
237
238    @Test
239    public void testGetIdMapping() throws Exception {
240        FacetMapping facetMapping = FacetMappingFactory
241                .getFacetMapping("http://catalog.clarin.eu/ds/ComponentRegistry/rest/registry/profiles/clarin.eu:cr1:p_1290431694629/xsd");
242        List<FacetConfiguration> facets = facetMapping.getFacets();
243        FacetConfiguration facet = facets.get(0);
244        assertEquals(FacetConstants.FIELD_ID, facet.getName());
245        assertEquals(2, facet.getPatterns().size());
246        assertEquals("/c:CMD/c:Header/c:MdSelfLink/text()", facet.getPatterns().get(0));
247        assertEquals("/c:CMD/c:Components/c:EastRepublican/c:GeneralInformation/c:Identifier/text()", facet.getPatterns().get(1));
248    }
249
250}
Note: See TracBrowser for help on using the repository browser.