Project

General

Profile

1
package eu.dnetlib.resolver;
2

    
3
import com.google.gson.Gson;
4
import eu.dnetlib.data.transform.OntologyLoader;
5
import eu.dnetlib.dli.DLIUtils;
6
import eu.dnetlib.enabling.locators.UniqueServiceLocator;
7
import eu.dnetlib.rmi.enabling.ISLookUpService;
8
import org.apache.commons.io.IOUtils;
9
import org.junit.Before;
10
import org.mockito.Mock;
11
import org.mockito.Mockito;
12

    
13
import java.io.InputStream;
14
import java.util.Arrays;
15
import java.util.List;
16
import java.util.Map;
17

    
18
import static org.mockito.Mockito.when;
19

    
20
public abstract class DLIAbstractTest {
21
    @Mock
22
    protected DLIUtils dliUtilsInstance;
23

    
24

    
25
    @Mock
26
    protected UniqueServiceLocator uniqueServiceLocator;
27

    
28
    @Mock
29
    protected ISLookUpService isLookUpServiceMock;
30

    
31
    @Before
32
    public void initialize() throws Exception {
33

    
34
        final String query = "for $x in collection('/db/DRIVER/RepositoryServiceResources/RepositoryServiceResourceType') "
35
                + "return concat($x//FIELD[./key='NamespacePrefix']/value/text(),'@--@',$x//FIELD[./key='DataSourceId']/value/text(),'@--@',$x//ENGLISH_NAME )";
36
        dliUtilsInstance = Mockito.mock(DLIUtils.class);
37

    
38
        uniqueServiceLocator = Mockito.mock(UniqueServiceLocator.class);
39
        isLookUpServiceMock = Mockito.mock(ISLookUpService.class);
40
        dliUtilsInstance.setServiceLocator(uniqueServiceLocator);
41

    
42

    
43
        final InputStream inputStream = this.getClass().getResourceAsStream("/eu/dnetlib/transformation/data-center.json");
44
        Map<String, String> dataciteDatasource = new Gson().fromJson(IOUtils.toString(inputStream), Map.class);
45

    
46
        DLIUtils.setInstance(dliUtilsInstance);
47
        when(dliUtilsInstance.getServiceLocator()).thenReturn(uniqueServiceLocator);
48
        when(dliUtilsInstance.getDataciteDatasource()).thenReturn(dataciteDatasource);
49

    
50
        when(uniqueServiceLocator.getService(ISLookUpService.class)).thenReturn(isLookUpServiceMock);
51

    
52

    
53
        List<String> resutlDS = Arrays.asList(
54
                "r3d100010255@--@dli_________::r3d100010255@--@icpsr",
55
                "r3d100010134@--@dli_________::r3d100010134@--@pangaea",
56
                "r3d100010464@--@dli_________::r3d100010464@--@ANDS",
57
                "r3d100010327@--@dli_________::r3d100010327@--@RCSB",
58
                "nature______@--@dli_________::nature______@--@Nature",
59
                "ieee________@--@dli_________::ieee________@--@IEEE",
60
                "r3d100010578@--@dli_________::r3d100010578@--@IEDA",
61
                "r3d100010216@--@dli_________::r3d100010216@--@3tU",
62
                "r3d100010255@--@dli_________::r3d100010255@--@icpsr",
63
                "datacite____@--@dli_________::datacite____@--@Datasets in Datacite",
64
                "r3d100010527@--@dli_________::r3d100010527@--@European Nucleotide Archive"
65
        );
66
        when(isLookUpServiceMock.quickSearchProfile(query)).thenReturn(resutlDS);
67
        DLIUtils.ontologies = OntologyLoader.loadOntologiesFromCp();
68
    }
69
}
(2-2/6)