1 |
43783
|
sandro.lab
|
package eu.dnetlib.resolver.store;
|
2 |
43618
|
sandro.lab
|
|
3 |
|
|
import java.util.Arrays;
|
4 |
|
|
import java.util.HashSet;
|
5 |
|
|
import java.util.Set;
|
6 |
|
|
|
7 |
49184
|
sandro.lab
|
|
8 |
44356
|
claudio.at
|
import eu.dnetlib.dli.resolver.model.CompletionStatus;
|
9 |
49184
|
sandro.lab
|
import eu.dnetlib.dli.resolver.model.DLIObjectProvenance;
|
10 |
|
|
import eu.dnetlib.dli.resolver.model.DLIResolvedObject;
|
11 |
|
|
|
12 |
44356
|
claudio.at
|
import eu.dnetlib.dli.resolver.model.ObjectProvisionMode;
|
13 |
49184
|
sandro.lab
|
import eu.dnetlib.pid.resolver.store.ResolverStore;
|
14 |
43618
|
sandro.lab
|
import org.junit.After;
|
15 |
|
|
import org.junit.Assert;
|
16 |
46682
|
sandro.lab
|
import org.junit.Ignore;
|
17 |
43618
|
sandro.lab
|
import org.junit.Test;
|
18 |
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
19 |
|
|
|
20 |
|
|
/**
|
21 |
|
|
* Created by sandro on 9/8/16.
|
22 |
|
|
*/
|
23 |
|
|
|
24 |
46682
|
sandro.lab
|
//@RunWith(SpringJUnit4ClassRunner.class)
|
25 |
|
|
//@ContextConfiguration(classes = ConfigurationResolverStoreTestConfig.class)
|
26 |
|
|
@Ignore
|
27 |
43618
|
sandro.lab
|
public class ResolverStoreTest {
|
28 |
|
|
|
29 |
43783
|
sandro.lab
|
private static Set<String> expectedIndex = new HashSet<>(Arrays.asList("_id", "pid", "pid_type", "resolver", "dnet_identifier"));
|
30 |
43618
|
sandro.lab
|
|
31 |
|
|
@Autowired
|
32 |
44356
|
claudio.at
|
private ResolverStore store;
|
33 |
43618
|
sandro.lab
|
|
34 |
|
|
@After
|
35 |
|
|
public void dropDown() {
|
36 |
43623
|
sandro.lab
|
store.getMongoDatabase().drop();
|
37 |
43618
|
sandro.lab
|
}
|
38 |
|
|
|
39 |
|
|
@Test
|
40 |
|
|
public void testIndexes() {
|
41 |
|
|
store.checkIntegrityCollection();
|
42 |
|
|
Set<String> inputSet = new HashSet<>(store.getIndexName());
|
43 |
|
|
Assert.assertTrue(inputSet.containsAll(expectedIndex));
|
44 |
|
|
}
|
45 |
|
|
|
46 |
|
|
@Test
|
47 |
|
|
public void testInsertSingleItem() {
|
48 |
49184
|
sandro.lab
|
final DLIResolvedObject expected = createdMockObject("1234", "DOI");
|
49 |
|
|
store.insertRecord("Resolver Test", expected);
|
50 |
|
|
final DLIResolvedObject doi = (DLIResolvedObject) store.getRecord(expected.getPid(), expected.getPidType());
|
51 |
|
|
Assert.assertNotNull(doi);
|
52 |
43783
|
sandro.lab
|
doi.getTitles().forEach(it -> Assert.assertTrue(expected.getTitles().contains(it)));
|
53 |
43618
|
sandro.lab
|
Assert.assertEquals(doi.getPid(), expected.getPid());
|
54 |
|
|
Assert.assertEquals(doi.getPidType(), expected.getPidType());
|
55 |
|
|
}
|
56 |
|
|
|
57 |
49184
|
sandro.lab
|
private DLIResolvedObject createdMockObject(final String pid, final String pidType) {
|
58 |
|
|
DLIResolvedObject tmp = new DLIResolvedObject();
|
59 |
|
|
tmp.setPid(pid);
|
60 |
43618
|
sandro.lab
|
tmp.setPidType(pidType);
|
61 |
43783
|
sandro.lab
|
tmp.setTitles(Arrays.asList("Titolo 1", "Titolo 2"));
|
62 |
49184
|
sandro.lab
|
DLIObjectProvenance p1 = new DLIObjectProvenance("datasource1", ObjectProvisionMode.collected.toString(),
|
63 |
|
|
CompletionStatus.complete.toString(), "{pid, pidtype", "01/01/01", true);
|
64 |
|
|
DLIObjectProvenance p2 = new DLIObjectProvenance("datasource2", ObjectProvisionMode.collected.toString(),
|
65 |
|
|
CompletionStatus.incomplete.toString(), "{pid, pidtype", "02/02/02", true);
|
66 |
43618
|
sandro.lab
|
tmp.setDatasourceProvenance(Arrays.asList(p1, p2));
|
67 |
43783
|
sandro.lab
|
tmp.setAuthors(Arrays.asList("Author 1", "Author 2"));
|
68 |
43618
|
sandro.lab
|
tmp.setDate("20/09/2016");
|
69 |
|
|
return tmp;
|
70 |
|
|
}
|
71 |
|
|
|
72 |
|
|
}
|