Revision 60378
Added by Alessia Bardi almost 3 years ago
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/deploy.info | ||
---|---|---|
1 |
{"type_source": "SVN", "goal": "package -U source:jar", "url": "http://svn-public.driver.research-infrastructures.eu/driver/dnet45/modules/dnet-collector-plugins/trunk/", "deploy_repository": "dnet45-snapshots", "version": "4", "mail": "sandro.labruzzo@isti.cnr.it,michele.artini@isti.cnr.it, claudio.atzori@isti.cnr.it, alessia.bardi@isti.cnr.it", "deploy_repository_url": "http://maven.research-infrastructures.eu/nexus/content/repositories/dnet45-snapshots", "name": "dnet-collector-plugins"} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/excel/ReadExcelTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.excel; |
|
2 |
|
|
3 |
import java.util.HashMap; |
|
4 |
import java.util.Iterator; |
|
5 |
|
|
6 |
import eu.dnetlib.data.collector.plugins.HttpCSVCollectorPlugin; |
|
7 |
import eu.dnetlib.data.collector.rmi.InterfaceDescriptor; |
|
8 |
import org.junit.Assert; |
|
9 |
import org.junit.Before; |
|
10 |
import org.junit.Ignore; |
|
11 |
import org.junit.Test; |
|
12 |
/** |
|
13 |
* Created by miriam on 10/05/2017. |
|
14 |
*/ |
|
15 |
@Ignore |
|
16 |
public class ReadExcelTest { |
|
17 |
private InterfaceDescriptor descr; |
|
18 |
private Read r; |
|
19 |
|
|
20 |
//private String excelPath = "eu/dnetlib/data/collector/plugins/excel/fwf_projects_100.xlsx"; |
|
21 |
|
|
22 |
|
|
23 |
@Before |
|
24 |
public void setUp() throws Exception { |
|
25 |
descr = new InterfaceDescriptor(); |
|
26 |
//descr.setBaseUrl("https://pf.fwf.ac.at/en/research-in-practice/project-finder.xlsx?&&&search%5Bcall%5D=&search%5Bdecision_board_ids%5D=&search%5Bend_date%5D=&search%5Binstitute_name%5D=&search%5Blead_firstname%5D=&search%5Blead_lastname%5D=&search%5Bper_page%5D=10&search%5Bproject_number%5D=&search%5Bproject_title%5D=&search%5Bscience_discipline_id%5D=&search%5Bstart_date%5D=&search%5Bstatus_id%5D=&search%5Bwhat%5D=&action=index&controller=projects&locale=en&per_page=10" ); |
|
27 |
HashMap<String, String> params = new HashMap<String, String>(); |
|
28 |
|
|
29 |
params.put("argument", "{\"replace\":{\"header\":[{\"from\":\"&\",\"to\":\"and\"}],\"body\":[{\"from\":\"\\n\",\"to\":\" \"}]}, \"replace_currency\":[{\"from\":\"a\", \"to\":\"b\"}],\"col_currency\":3}"); |
|
30 |
|
|
31 |
|
|
32 |
params.put("header_row","4"); |
|
33 |
params.put("tmp_file","//tmp//fwf.xslx"); |
|
34 |
params.put("remove_empty_lines","yes"); |
|
35 |
params.put("remove_lines_with_id"," – "); |
|
36 |
params.put("col_id","1"); |
|
37 |
params.put("remove_tmp_file","no"); |
|
38 |
params.put("sheet_number","0"); |
|
39 |
params.put("file_to_save","/tmp/project_search.2017.05.10.csv"); |
|
40 |
params.put("separator", ","); |
|
41 |
params.put("quote","\""); |
|
42 |
descr.setParams(params); |
|
43 |
|
|
44 |
|
|
45 |
//descr.setBaseUrl(excelPath); |
|
46 |
// HashMap<String, String> params = new HashMap<String, String>(); |
|
47 |
// |
|
48 |
// params.put("header_row","0"); |
|
49 |
// params.put("tmp_file","/tmp/RSF.xslx"); |
|
50 |
// params.put("remove_empty_lines","yes"); |
|
51 |
// params.put("remove_lines_with_id","-“ "); |
|
52 |
// params.put("col_id","0"); |
|
53 |
// params.put("remove_tmp_file","no"); |
|
54 |
// params.put("sheet_number","1"); |
|
55 |
// params.put("file_to_save","/tmp/RSF.csv"); |
|
56 |
// params.put("separator", ","); |
|
57 |
// params.put("quote","\""); |
|
58 |
// descr.setParams(params); |
|
59 |
r = new Read(descr); |
|
60 |
r.setCollector(new HttpCSVCollectorPlugin()); |
|
61 |
} |
|
62 |
|
|
63 |
// @Test |
|
64 |
// //@Ignore |
|
65 |
// public void readExcelFromUrl()throws Exception{ |
|
66 |
// Iterator<String> it = r.parseFile().iterator(); |
|
67 |
// int i = 0; |
|
68 |
// String st = null; |
|
69 |
// try { |
|
70 |
// while (it.hasNext()) { |
|
71 |
// st = it.next(); |
|
72 |
// Assert.assertNotNull(st); |
|
73 |
// i++; |
|
74 |
// //System.out.println(it.next()); |
|
75 |
// } |
|
76 |
// }catch(Exception e){ |
|
77 |
// System.out.println("linea " + i); |
|
78 |
// e.printStackTrace(); |
|
79 |
// System.out.println(st); |
|
80 |
// } |
|
81 |
// |
|
82 |
// } |
|
83 |
|
|
84 |
@Test |
|
85 |
public void readExcelFromFile() throws Exception{ |
|
86 |
Iterator<String> it = r.parseFile().iterator(); |
|
87 |
int i =1; |
|
88 |
String st = null; |
|
89 |
try { |
|
90 |
while (it.hasNext()) { |
|
91 |
st = it.next(); |
|
92 |
Assert.assertNotNull(st); |
|
93 |
i++; |
|
94 |
//System.out.println(it.next()); |
|
95 |
} |
|
96 |
}catch(Exception e){ |
|
97 |
System.out.println("linea " + i); |
|
98 |
e.printStackTrace(); |
|
99 |
System.out.println(st); |
|
100 |
} |
|
101 |
|
|
102 |
|
|
103 |
} |
|
104 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/httpfilename/HTTPWithFileNameTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.httpfilename; |
|
2 |
import java.util.Iterator; |
|
3 |
|
|
4 |
import org.junit.Ignore; |
|
5 |
import org.junit.Test; |
|
6 |
|
|
7 |
|
|
8 |
/** |
|
9 |
* Created by miriam on 07/05/2018. |
|
10 |
*/ |
|
11 |
@Ignore |
|
12 |
public class HTTPWithFileNameTest { |
|
13 |
|
|
14 |
private void iterate(Iterator<String> iterator, boolean exit){ |
|
15 |
try{ |
|
16 |
while (iterator.hasNext()){ |
|
17 |
|
|
18 |
System.out.println(iterator.next()); |
|
19 |
if(exit) |
|
20 |
System.exit(0); |
|
21 |
|
|
22 |
|
|
23 |
} |
|
24 |
|
|
25 |
}catch(Exception ex){ |
|
26 |
ex.printStackTrace(); |
|
27 |
} |
|
28 |
} |
|
29 |
|
|
30 |
@Test |
|
31 |
@Ignore |
|
32 |
public void testRSCollectorFrontiers() |
|
33 |
{ |
|
34 |
HTTPWithFileNameCollectorIterable rsc = new HTTPWithFileNameCollectorIterable("https://dev-openaire.d4science.org/RS/Frontiers/data/Frontiers/metadata/000/",null); |
|
35 |
iterate(rsc.iterator(),false); |
|
36 |
|
|
37 |
} |
|
38 |
|
|
39 |
@Test |
|
40 |
@Ignore |
|
41 |
public void testRSCollectorPLOSCount() |
|
42 |
{ |
|
43 |
HTTPWithFileNameCollectorIterable rsc = new HTTPWithFileNameCollectorIterable("https://dev-openaire.d4science.org/RS/PLOS/data/public_library_of_science/metadata/354/","article-type=\"correction\""); |
|
44 |
Iterator<String> iterator = rsc.iterator(); |
|
45 |
int count = 0; |
|
46 |
int body = 0; |
|
47 |
int corrections = 0; |
|
48 |
try{ |
|
49 |
while (iterator.hasNext()){ |
|
50 |
|
|
51 |
String meta = iterator.next(); |
|
52 |
if (!meta.contains("article-type=\"correction\"")){ |
|
53 |
count++; |
|
54 |
int index = meta.indexOf("<body>"); |
|
55 |
if(meta.substring(index).contains("<sec")) |
|
56 |
body++; |
|
57 |
else { |
|
58 |
System.out.println(meta); |
|
59 |
System.out.println(count); |
|
60 |
} |
|
61 |
|
|
62 |
}else |
|
63 |
corrections++; |
|
64 |
|
|
65 |
} |
|
66 |
System.out.println(count + " " + body + " " + corrections); |
|
67 |
}catch(Exception ex){ |
|
68 |
ex.printStackTrace(); |
|
69 |
} |
|
70 |
} |
|
71 |
|
|
72 |
@Test |
|
73 |
@Ignore |
|
74 |
public void testRSCollectorPLOS() |
|
75 |
{ |
|
76 |
HTTPWithFileNameCollectorIterable rsc = new HTTPWithFileNameCollectorIterable("https://dev-openaire.d4science.org/RS/PLOS/data/public_library_of_science/metadata/400/","article-type=\"correction\""); |
|
77 |
|
|
78 |
|
|
79 |
iterate(rsc.iterator(),false); |
|
80 |
} |
|
81 |
|
|
82 |
@Test |
|
83 |
@Ignore |
|
84 |
public void testRSCollectorSpringer() |
|
85 |
{ |
|
86 |
HTTPWithFileNameCollectorIterable rsc = new HTTPWithFileNameCollectorIterable("https://dev-openaire.d4science.org/RS/Springer-OA/data/Springer-OA/metadata/8a0/",null); |
|
87 |
|
|
88 |
iterate(rsc.iterator(),false); |
|
89 |
|
|
90 |
} |
|
91 |
|
|
92 |
@Test |
|
93 |
public void testEmptyCollection() |
|
94 |
{ |
|
95 |
HTTPWithFileNameCollectorIterable rsc = new HTTPWithFileNameCollectorIterable("",null); |
|
96 |
|
|
97 |
iterate(rsc.iterator(),true); |
|
98 |
} |
|
99 |
|
|
100 |
@Test |
|
101 |
@Ignore |
|
102 |
public void testCheck(){ |
|
103 |
HTTPWithFileNameCollectorIterable rsc = new HTTPWithFileNameCollectorIterable("https://dev-openaire.d4science.org/RS/Elsevier/data/elsevier/metadata/000/",null); |
|
104 |
Iterator<String> iterator = rsc.iterator(); |
|
105 |
int count=0; |
|
106 |
while (iterator.hasNext()) { |
|
107 |
iterator.next(); |
|
108 |
count += 1; |
|
109 |
} |
|
110 |
System.out.println("count = " + count); |
|
111 |
} |
|
112 |
|
|
113 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/utils/JsonUtilsTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.utils; |
|
2 |
|
|
3 |
import org.junit.Before; |
|
4 |
import org.junit.Test; |
|
5 |
|
|
6 |
public class JsonUtilsTest { |
|
7 |
|
|
8 |
private JsonUtils utils; |
|
9 |
|
|
10 |
@Before |
|
11 |
public void setup(){ |
|
12 |
utils = new JsonUtils(); |
|
13 |
} |
|
14 |
|
|
15 |
@Test |
|
16 |
public void testConvertToXML(){ |
|
17 |
String json = "{\"field1\":\"value1\", \"field2\":2}"; |
|
18 |
System.out.println(utils.convertToXML(json)); |
|
19 |
} |
|
20 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/datasets/DatasetsByProjectIteratorTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.datasets; |
|
2 |
|
|
3 |
import java.net.URL; |
|
4 |
import java.util.HashMap; |
|
5 |
|
|
6 |
import eu.dnetlib.data.collector.rmi.CollectorServiceException; |
|
7 |
import eu.dnetlib.data.collector.rmi.InterfaceDescriptor; |
|
8 |
import org.junit.Assert; |
|
9 |
import org.junit.Before; |
|
10 |
import org.junit.Ignore; |
|
11 |
import org.junit.Test; |
|
12 |
@Ignore |
|
13 |
public class DatasetsByProjectIteratorTest { |
|
14 |
|
|
15 |
@Before |
|
16 |
public void setUp() throws Exception {} |
|
17 |
|
|
18 |
@Test |
|
19 |
public void test() throws CollectorServiceException { |
|
20 |
URL resource = DatasetsByProjectIteratorTest.class.getResource("pangaea-eu-projects_Openaire.csv"); |
|
21 |
InterfaceDescriptor descr = new InterfaceDescriptor(); |
|
22 |
HashMap<String, String> params = new HashMap<String, String>(); |
|
23 |
descr.setBaseUrl(resource.toString()); |
|
24 |
descr.setParams(params); |
|
25 |
DatasetsByProjectPlugin plugin = new DatasetsByProjectPlugin(); |
|
26 |
Iterable<String> result = plugin.collect(descr, "", ""); |
|
27 |
|
|
28 |
int i = 0; |
|
29 |
for (String s : result) { |
|
30 |
Assert.assertNotNull(s); |
|
31 |
System.out.println(s); |
|
32 |
//System.out.println("Parsed " + i++); |
|
33 |
break; |
|
34 |
} |
|
35 |
|
|
36 |
} |
|
37 |
|
|
38 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/datasets/DatasetsByJournalIteratorTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.datasets; |
|
2 |
|
|
3 |
import java.util.List; |
|
4 |
|
|
5 |
import org.junit.Assert; |
|
6 |
import org.junit.Before; |
|
7 |
import org.junit.Test; |
|
8 |
|
|
9 |
import com.google.common.collect.Lists; |
|
10 |
|
|
11 |
import eu.dnetlib.data.collector.rmi.CollectorServiceException; |
|
12 |
|
|
13 |
public class DatasetsByJournalIteratorTest { |
|
14 |
|
|
15 |
@Before |
|
16 |
public void setUp() throws Exception {} |
|
17 |
|
|
18 |
@Test |
|
19 |
public void test() throws CollectorServiceException { |
|
20 |
List<PangaeaJournalInfo> inputList = Lists.newArrayList(); |
|
21 |
|
|
22 |
PangaeaJournalInfo jp = new PangaeaJournalInfo(); |
|
23 |
jp.setDatasourceId("dsId1"); |
|
24 |
jp.setJournalId("journal10825"); |
|
25 |
jp.setJournalName("journal Name"); |
|
26 |
inputList.add(jp); |
|
27 |
|
|
28 |
DatasetsByJournalIterator iterator = new DatasetsByJournalIterator(inputList.iterator()); |
|
29 |
|
|
30 |
int i = 0; |
|
31 |
for (String s : iterator) { |
|
32 |
Assert.assertNotNull(s); |
|
33 |
if (i++ == 100) { |
|
34 |
i--; |
|
35 |
break; |
|
36 |
} |
|
37 |
} |
|
38 |
Assert.assertEquals(i, 100); |
|
39 |
|
|
40 |
} |
|
41 |
|
|
42 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/schemaorg/SchemaOrgSitemapIteratorTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.schemaorg; |
|
2 |
|
|
3 |
import eu.dnetlib.data.collector.plugins.schemaorg.sitemapindex.SitemapFileIterator; |
|
4 |
import eu.dnetlib.data.collector.rmi.CollectorServiceException; |
|
5 |
import eu.dnetlib.data.collector.rmi.InterfaceDescriptor; |
|
6 |
import org.junit.Assert; |
|
7 |
import org.junit.Before; |
|
8 |
import org.junit.Ignore; |
|
9 |
import org.junit.Test; |
|
10 |
|
|
11 |
import java.net.URL; |
|
12 |
import java.nio.charset.StandardCharsets; |
|
13 |
import java.util.ArrayList; |
|
14 |
import java.util.HashMap; |
|
15 |
import java.util.List; |
|
16 |
import java.util.concurrent.TimeUnit; |
|
17 |
|
|
18 |
@Ignore |
|
19 |
public class SchemaOrgSitemapIteratorTest { |
|
20 |
@Before |
|
21 |
public void setUp() throws Exception { |
|
22 |
} |
|
23 |
|
|
24 |
@Test |
|
25 |
public void test() throws CollectorServiceException { |
|
26 |
URL resource = SchemaOrgSitemapIteratorTest.class.getResource("sitemap.xml"); |
|
27 |
|
|
28 |
HashMap<String,String> params = new HashMap<>(); |
|
29 |
params.put("repositoryAccessType", "sitemapindex"); |
|
30 |
params.put("consumerBlockPolling", Boolean.toString(true)); |
|
31 |
params.put("consumerBlockPollingTimeout", "2"); |
|
32 |
params.put("consumerBlockPollingTimeoutUnit", TimeUnit.MINUTES.toString()); |
|
33 |
params.put("endpointCharset", StandardCharsets.UTF_8.name()); |
|
34 |
params.put("updatedDateFormat", "YYYY-MM-DD"); |
|
35 |
params.put("createdDateFormat", "YYYY-MM-DD"); |
|
36 |
params.put("publicationDateFormat", "YYYY-MM-DD"); |
|
37 |
params.put("contributorFallbackType", DatasetDocument.Contributor.ContributorType.Other.toString()); |
|
38 |
params.put("identifierFallbackType", null); |
|
39 |
params.put("identifierFallbackURL", Boolean.toString(true)); |
|
40 |
params.put("identifierMappingARK", "ark, ARK"); |
|
41 |
params.put("identifierMappingDOI", "doi, DOI"); |
|
42 |
params.put("identifierMappingHandle", "Handle, HANDLE"); |
|
43 |
params.put("identifierMappingPURL", "purl, PURL"); |
|
44 |
params.put("identifierMappingURN", "urn, URN"); |
|
45 |
params.put("identifierMappingURL", "url, URL"); |
|
46 |
|
|
47 |
params.put("repositoryAccessType", "sitemapindex"); |
|
48 |
params.put("sitemap_queueSize", "100"); |
|
49 |
params.put("sitemap_IndexCharset", StandardCharsets.UTF_8.name()); |
|
50 |
params.put("sitemap_FileCharset", StandardCharsets.UTF_8.name()); |
|
51 |
params.put("sitemap_FileSchema", SitemapFileIterator.Options.SitemapSchemaType.Text.toString()); |
|
52 |
params.put("sitemap_FileType", SitemapFileIterator.Options.SitemapFileType.Text.toString()); |
|
53 |
|
|
54 |
InterfaceDescriptor descriptor = new InterfaceDescriptor(); |
|
55 |
descriptor.setId("schema.org - reactome"); |
|
56 |
descriptor.setBaseUrl(resource.toString()); |
|
57 |
descriptor.setParams(params); |
|
58 |
|
|
59 |
SchemaOrgPlugin schemaOrgPlugin = new SchemaOrgPlugin(); |
|
60 |
|
|
61 |
Iterable<String> iterable = schemaOrgPlugin.collect(descriptor, null, null); |
|
62 |
|
|
63 |
List<Integer> lengths =new ArrayList<>(); |
|
64 |
int count =0; |
|
65 |
for(String item : iterable) { |
|
66 |
count += 1; |
|
67 |
lengths.add(item.length()); |
|
68 |
} |
|
69 |
Assert.assertEquals(2, count); |
|
70 |
Assert.assertEquals(1626, (int)lengths.get(0)); |
|
71 |
Assert.assertEquals(48, (int)lengths.get(1)); |
|
72 |
|
|
73 |
} |
|
74 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/projects/grist/GristProjectsIterableTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.projects.grist; |
|
2 |
|
|
3 |
import java.io.File; |
|
4 |
import java.io.IOException; |
|
5 |
import java.util.Iterator; |
|
6 |
import java.util.List; |
|
7 |
import java.util.Set; |
|
8 |
|
|
9 |
import com.google.common.collect.Lists; |
|
10 |
import com.google.common.collect.Sets; |
|
11 |
import org.apache.commons.io.FileUtils; |
|
12 |
import org.apache.commons.io.IOUtils; |
|
13 |
import org.dom4j.Document; |
|
14 |
import org.dom4j.DocumentException; |
|
15 |
import org.dom4j.io.SAXReader; |
|
16 |
import org.junit.Before; |
|
17 |
import org.junit.Ignore; |
|
18 |
import org.junit.Test; |
|
19 |
|
|
20 |
import static org.junit.Assert.assertNotNull; |
|
21 |
import static org.junit.Assert.assertTrue; |
|
22 |
|
|
23 |
/** |
|
24 |
* GristProjectsIterable Tester. |
|
25 |
* |
|
26 |
* @author alessia |
|
27 |
* @version 1.0 |
|
28 |
* @since <pre>Apr 22, 2016</pre> |
|
29 |
*/ |
|
30 |
@Ignore |
|
31 |
public class GristProjectsIterableTest { |
|
32 |
|
|
33 |
private String baseUrl = "http://www.ebi.ac.uk/europepmc/GristAPI/rest/get/query=ga:%22Wellcome%20Trust%22&resultType=core"; |
|
34 |
private GristProjectsIterable iterable; |
|
35 |
private Iterator<String> it; |
|
36 |
private SAXReader reader; |
|
37 |
|
|
38 |
@Before |
|
39 |
public void before() throws Exception { |
|
40 |
iterable = new GristProjectsIterable(baseUrl); |
|
41 |
it = iterable.iterator(); |
|
42 |
reader = new SAXReader(); |
|
43 |
} |
|
44 |
|
|
45 |
/** |
|
46 |
* Method: hasNext() |
|
47 |
*/ |
|
48 |
@Test |
|
49 |
public void testHasNext() throws Exception { |
|
50 |
assertTrue(it.hasNext()); |
|
51 |
} |
|
52 |
|
|
53 |
/** |
|
54 |
* Method: next() |
|
55 |
*/ |
|
56 |
@Test |
|
57 |
public void testNext() throws Exception { |
|
58 |
assertNotNull(it.next()); |
|
59 |
} |
|
60 |
|
|
61 |
/** |
|
62 |
* Method: remove() |
|
63 |
*/ |
|
64 |
@Test(expected = UnsupportedOperationException.class) |
|
65 |
public void testRemove() throws Exception { |
|
66 |
it.remove(); |
|
67 |
} |
|
68 |
|
|
69 |
@Test |
|
70 |
public void iterateToNextPage() { |
|
71 |
for (int maxInPage = 25; maxInPage > 0; maxInPage--) { |
|
72 |
it.next(); |
|
73 |
} |
|
74 |
if (it.hasNext()) { |
|
75 |
System.out.println(it.next()); |
|
76 |
} |
|
77 |
} |
|
78 |
|
|
79 |
@Test |
|
80 |
public void checkProjectIdentifiers() throws DocumentException, IOException { |
|
81 |
List<String> identifiers = Lists.newArrayList(); |
|
82 |
List<String> duplicates = Lists.newArrayList(); |
|
83 |
Iterator<String> it2 = iterable.iterator(); |
|
84 |
while (it2.hasNext()) { |
|
85 |
String id = parseId(it2.next()); |
|
86 |
if (identifiers.contains(id)) { |
|
87 |
System.out.println("Found duplicate identifier: " + id); |
|
88 |
duplicates.add(id); |
|
89 |
} |
|
90 |
identifiers.add(id); |
|
91 |
} |
|
92 |
|
|
93 |
int listSize = identifiers.size(); |
|
94 |
System.out.println("Total grant ids " + listSize); |
|
95 |
Set<String> set = Sets.newHashSet(identifiers); |
|
96 |
Set<String> dupSet = Sets.newHashSet(duplicates); |
|
97 |
System.out.println("Unique grant ids: " + set.size()); |
|
98 |
System.out.println("Duplicate grant ids: " + dupSet.size()); |
|
99 |
System.out.println(); |
|
100 |
serializeSetOnFile(dupSet); |
|
101 |
} |
|
102 |
|
|
103 |
private String parseId(String record) throws DocumentException { |
|
104 |
Document doc = reader.read(IOUtils.toInputStream(record)); |
|
105 |
return doc.selectSingleNode("//Grant/Id").getText(); |
|
106 |
} |
|
107 |
|
|
108 |
private void serializeSetOnFile(Set<String> s) throws IOException { |
|
109 |
File tmpDir = FileUtils.getTempDirectory(); |
|
110 |
System.out.println("Saving list in " + tmpDir.getAbsolutePath()); |
|
111 |
FileUtils.writeLines(FileUtils.getFile(tmpDir, "WT_duplicates.txt"), s); |
|
112 |
} |
|
113 |
|
|
114 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/projects/gtr2/Gtr2Test.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.projects.gtr2; |
|
2 |
|
|
3 |
import java.util.Iterator; |
|
4 |
|
|
5 |
import com.ximpleware.VTDGen; |
|
6 |
import eu.dnetlib.data.collector.plugins.HttpConnector; |
|
7 |
import eu.dnetlib.miscutils.functional.xml.TryIndentXmlString; |
|
8 |
import org.junit.Before; |
|
9 |
import org.junit.Ignore; |
|
10 |
import org.junit.Test; |
|
11 |
|
|
12 |
import static org.junit.Assert.assertEquals; |
|
13 |
import static org.junit.Assert.assertNotNull; |
|
14 |
|
|
15 |
@Ignore |
|
16 |
public class Gtr2Test { |
|
17 |
|
|
18 |
private String baseURL = "http://gtr.rcuk.ac.uk/gtr/api"; |
|
19 |
private Gtr2Helper helper; |
|
20 |
private Gtr2ProjectsIterable it; |
|
21 |
private HttpConnector connector; |
|
22 |
|
|
23 |
@Before |
|
24 |
public void prepare() { |
|
25 |
helper = new Gtr2Helper(); |
|
26 |
//System.setProperty("jsse.enableSNIExtension","false"); |
|
27 |
} |
|
28 |
|
|
29 |
@Test |
|
30 |
public void testOne() throws Exception { |
|
31 |
System.out.println("one project"); |
|
32 |
VTDGen vg_tmp = new VTDGen(); |
|
33 |
connector = new HttpConnector(); |
|
34 |
byte[] bytes = connector.getInputSource("http://gtr.rcuk.ac.uk/gtr/api/projects/E178742B-571B-498F-8402-122F17C47546").getBytes("UTF-8"); |
|
35 |
//vg_tmp.parseHttpUrl("https://gtr.rcuk.ac.uk/gtr/api/projects/E178742B-571B-498F-8402-122F17C47546", false); |
|
36 |
vg_tmp.setDoc(bytes); |
|
37 |
vg_tmp.parse(false); |
|
38 |
String s = helper.processProject(vg_tmp.getNav(), "xmlns:ns=\"http:///afgshs\""); |
|
39 |
System.out.println(s); |
|
40 |
} |
|
41 |
|
|
42 |
@Test |
|
43 |
public void testPaging() throws Exception { |
|
44 |
it = new Gtr2ProjectsIterable(baseURL, null, 2, 3); |
|
45 |
TryIndentXmlString indenter = new TryIndentXmlString(); |
|
46 |
Iterator<String> iterator = it.iterator(); |
|
47 |
while (iterator.hasNext()) { |
|
48 |
Thread.sleep(300); |
|
49 |
String res = iterator.next(); |
|
50 |
assertNotNull(res); |
|
51 |
indenter.evaluate(res); |
|
52 |
} |
|
53 |
} |
|
54 |
|
|
55 |
@Test |
|
56 |
public void testOnePage() throws Exception { |
|
57 |
it = new Gtr2ProjectsIterable(baseURL, null, 12, 12); |
|
58 |
int count = iterateAndCount(it.iterator()); |
|
59 |
assertEquals(20, count); |
|
60 |
} |
|
61 |
|
|
62 |
@Test |
|
63 |
public void testIncrementalHarvestingNoRecords() throws Exception { |
|
64 |
System.out.println("incremental Harvesting"); |
|
65 |
it = new Gtr2ProjectsIterable(baseURL, "2050-12-12", 11, 13); |
|
66 |
int count = iterateAndCount(it.iterator()); |
|
67 |
assertEquals(0, count); |
|
68 |
} |
|
69 |
|
|
70 |
@Test |
|
71 |
public void testIncrementalHarvesting() throws Exception { |
|
72 |
System.out.println("incremental Harvesting"); |
|
73 |
it = new Gtr2ProjectsIterable(baseURL, "2016-11-30", 11, 11); |
|
74 |
int count = iterateAndCount(it.iterator()); |
|
75 |
assertEquals(20, count); |
|
76 |
} |
|
77 |
|
|
78 |
@Test |
|
79 |
public void testMultithreading() throws Exception { |
|
80 |
System.out.println("testing new multithreading configuration"); |
|
81 |
it = new Gtr2ProjectsIterable(baseURL, null); |
|
82 |
TryIndentXmlString indenter = new TryIndentXmlString(); |
|
83 |
it.setEndAtPage(3); |
|
84 |
Iterator<String> iterator = it.iterator(); |
|
85 |
while (iterator.hasNext()) { |
|
86 |
String res = iterator.next(); |
|
87 |
assertNotNull(res); |
|
88 |
// System.out.println(res); |
|
89 |
// Scanner keyboard = new Scanner(System.in); |
|
90 |
// System.out.println("press enter for next record"); |
|
91 |
// keyboard.nextLine(); |
|
92 |
|
|
93 |
} |
|
94 |
} |
|
95 |
|
|
96 |
private int iterateAndCount(final Iterator<String> iterator) throws Exception{ |
|
97 |
int i = 0; |
|
98 |
while (iterator.hasNext()) { |
|
99 |
assertNotNull(iterator.next()); |
|
100 |
i++; |
|
101 |
} |
|
102 |
System.out.println("Got "+i+" projects"); |
|
103 |
return i; |
|
104 |
} |
|
105 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/projects/gtr2/VTDXMLTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.projects.gtr2; |
|
2 |
|
|
3 |
import java.io.BufferedWriter; |
|
4 |
import java.io.ByteArrayOutputStream; |
|
5 |
import java.io.FileWriter; |
|
6 |
import java.io.PrintWriter; |
|
7 |
|
|
8 |
import com.ximpleware.AutoPilot; |
|
9 |
import com.ximpleware.VTDGen; |
|
10 |
import com.ximpleware.VTDNav; |
|
11 |
import org.apache.commons.lang3.StringUtils; |
|
12 |
import org.junit.Ignore; |
|
13 |
import org.junit.Test; |
|
14 |
@Ignore |
|
15 |
public class VTDXMLTest { |
|
16 |
|
|
17 |
private VTDGen vg; |
|
18 |
private VTDNav vn; |
|
19 |
private AutoPilot ap; |
|
20 |
|
|
21 |
private VTDGen vg_tmp; |
|
22 |
private VTDNav vn_tmp; |
|
23 |
private AutoPilot ap_tmp; |
|
24 |
|
|
25 |
private PrintWriter writer; |
|
26 |
//TODO: use resource and not full path |
|
27 |
private String inputFilePath = |
|
28 |
"/Users/alessia/workspace/dnet/dnet-collector-plugins/src/test/resources/eu.dnetlib.data.collector.plugins.projects.gtr2/projects.xml"; |
|
29 |
|
|
30 |
@Test |
|
31 |
public void test() throws Exception { |
|
32 |
vg = new VTDGen(); |
|
33 |
vg.parseFile(inputFilePath, false); |
|
34 |
vn = vg.getNav(); |
|
35 |
ap = new AutoPilot(vn); |
|
36 |
String ns = ""; |
|
37 |
ap.selectXPath(".//projects"); |
|
38 |
ap.evalXPath(); |
|
39 |
ns += "xmlns:ns1=\"" + vn.toNormalizedString(vn.getAttrVal("ns1")) + "\" "; |
|
40 |
ns += "xmlns:ns2=\"" + vn.toNormalizedString(vn.getAttrVal("ns2")) + "\" "; |
|
41 |
ns += "xmlns:ns3=\"" + vn.toNormalizedString(vn.getAttrVal("ns3")) + "\" "; |
|
42 |
ns += "xmlns:ns4=\"" + vn.toNormalizedString(vn.getAttrVal("ns4")) + "\" "; |
|
43 |
ns += "xmlns:ns5=\"" + vn.toNormalizedString(vn.getAttrVal("ns5")) + "\" "; |
|
44 |
ns += "xmlns:ns6=\"" + vn.toNormalizedString(vn.getAttrVal("ns6")) + "\" "; |
|
45 |
|
|
46 |
ap.selectXPath("//project"); |
|
47 |
int res = -1; |
|
48 |
ByteArrayOutputStream b = new ByteArrayOutputStream(); |
|
49 |
int i = 0; |
|
50 |
while ((res = ap.evalXPath()) != -1) { |
|
51 |
writer = new PrintWriter(new BufferedWriter(new FileWriter("projectPackage_"+(++i)+".xml"))); |
|
52 |
System.out.println(res); |
|
53 |
writer.println("<doc " + ns + ">"); |
|
54 |
writeFragment(vn); |
|
55 |
VTDNav clone = vn.cloneNav(); |
|
56 |
AutoPilot ap2 = new AutoPilot(clone); |
|
57 |
ap2.selectXPath(".//link[@rel='FUND']"); |
|
58 |
vg_tmp = new VTDGen(); |
|
59 |
|
|
60 |
while (ap2.evalXPath() != -1) { |
|
61 |
//String fund = clone.toNormalizedString(clone.getAttrVal("href")); |
|
62 |
evalXpath(clone.toNormalizedString(clone.getAttrVal("href")), ".//link[@rel='FUNDER']"); |
|
63 |
String funder = vn_tmp.toNormalizedString(vn_tmp.getAttrVal("href")); |
|
64 |
vn_tmp.toElement(VTDNav.ROOT); |
|
65 |
writeFragment(vn_tmp); |
|
66 |
writeNewTagAndInfo(funder, "//name", "<funder> <name>", "</name></funder>", null); |
|
67 |
} |
|
68 |
ap2.resetXPath(); |
|
69 |
ap2.selectXPath(".//link[@rel='LEAD_ORG']"); |
|
70 |
while (ap2.evalXPath() != -1) { |
|
71 |
writeNewTagAndInfo(clone.toNormalizedString(clone.getAttrVal("href")), "//name", "<lead-org><name>", "</name>", null); |
|
72 |
writeNewTagAndInfo(clone.toNormalizedString(clone.getAttrVal("href")), ".", "<id>", "</id></lead-org>", "id"); |
|
73 |
} |
|
74 |
ap2.resetXPath(); |
|
75 |
ap2.selectXPath(".//link[@rel='PP_ORG']"); |
|
76 |
while (ap2.evalXPath() != -1) { |
|
77 |
writeNewTagAndInfo(clone.toNormalizedString(clone.getAttrVal("href")), "//name", "<pp-org><name>", "</name></pp-org>", null); |
|
78 |
writeNewTagAndInfo(clone.toNormalizedString(clone.getAttrVal("href")), ".", "<id>", "</id></lead-org>", "id"); |
|
79 |
} |
|
80 |
ap2.resetXPath(); |
|
81 |
|
|
82 |
ap2.selectXPath(".//link[@rel='PI_PER']"); |
|
83 |
while (ap2.evalXPath() != -1) { |
|
84 |
setNavigator(clone.toNormalizedString(clone.getAttrVal("href"))); |
|
85 |
vn_tmp.toElement(VTDNav.ROOT); |
|
86 |
writeFragment(vn_tmp); |
|
87 |
} |
|
88 |
writer.println("</doc>"); |
|
89 |
writer.close(); |
|
90 |
} |
|
91 |
|
|
92 |
} |
|
93 |
|
|
94 |
private void setNavigator(String httpUrl) { |
|
95 |
vg_tmp.clear(); |
|
96 |
vg_tmp.parseHttpUrl(httpUrl, false); |
|
97 |
vn_tmp = vg_tmp.getNav(); |
|
98 |
} |
|
99 |
|
|
100 |
private int evalXpath(String httpUrl, String xPath) throws Exception { |
|
101 |
setNavigator(httpUrl); |
|
102 |
ap_tmp = new AutoPilot(vn_tmp); |
|
103 |
ap_tmp.selectXPath(xPath); |
|
104 |
return ap_tmp.evalXPath(); |
|
105 |
} |
|
106 |
|
|
107 |
private void writeFragment(VTDNav nav) throws Exception { |
|
108 |
ByteArrayOutputStream b = new ByteArrayOutputStream(); |
|
109 |
nav.dumpFragment(b); |
|
110 |
writer.println(b); |
|
111 |
b.reset(); |
|
112 |
} |
|
113 |
|
|
114 |
private void writeNewTagAndInfo(String search, String xPath, String xmlOpenTag, String xmlCloseTag, String attrName) throws Exception { |
|
115 |
int nav_res = evalXpath(search, xPath); |
|
116 |
if (nav_res != -1) { |
|
117 |
writer.println(xmlOpenTag); |
|
118 |
if(StringUtils.isNotBlank(attrName)) writer.println(vn_tmp.toNormalizedString(vn_tmp.getAttrVal(attrName))); |
|
119 |
else |
|
120 |
writer.println(vn_tmp.toNormalizedString(vn_tmp.getText())); |
|
121 |
writer.println(xmlCloseTag); |
|
122 |
} |
|
123 |
} |
|
124 |
|
|
125 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/datasources/Re3DataRepositoriesIteratorTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.datasources; |
|
2 |
|
|
3 |
import java.io.File; |
|
4 |
import java.io.FileOutputStream; |
|
5 |
import java.io.IOException; |
|
6 |
import java.util.Iterator; |
|
7 |
|
|
8 |
import eu.dnetlib.data.collector.plugins.HttpConnector; |
|
9 |
import org.apache.commons.io.FileUtils; |
|
10 |
import org.apache.commons.io.IOUtils; |
|
11 |
import org.apache.commons.logging.Log; |
|
12 |
import org.apache.commons.logging.LogFactory; |
|
13 |
import org.junit.Before; |
|
14 |
import org.junit.Ignore; |
|
15 |
import org.junit.Test; |
|
16 |
|
|
17 |
import static org.junit.Assert.*; |
|
18 |
|
|
19 |
@Ignore |
|
20 |
public class Re3DataRepositoriesIteratorTest { |
|
21 |
|
|
22 |
private static final Log log = LogFactory.getLog(Re3DataRepositoriesIteratorTest.class); |
|
23 |
|
|
24 |
private static final String TMP_DIR = "/tmp/re3data/"; |
|
25 |
int countRepos = 0; |
|
26 |
int expectedRepos = 2189; |
|
27 |
private Re3DataRepositoriesIterator re3dataIterator; |
|
28 |
private String baseURL = "https://www.re3data.org"; |
|
29 |
private String repoListURL = baseURL + "/api/v1/repositories"; |
|
30 |
|
|
31 |
private HttpConnector httpConnector; |
|
32 |
|
|
33 |
@Before |
|
34 |
public void setUp() throws Exception { |
|
35 |
httpConnector = new HttpConnector(); |
|
36 |
String input = httpConnector.getInputSource(repoListURL); |
|
37 |
re3dataIterator = new Re3DataRepositoriesIterator(IOUtils.toInputStream(input, "UTF-8"), baseURL, httpConnector); |
|
38 |
|
|
39 |
File tmpDir = new File(TMP_DIR); |
|
40 |
if (tmpDir.exists()) { |
|
41 |
log.info("deleting directory: " + tmpDir.getAbsolutePath()); |
|
42 |
FileUtils.forceDelete(tmpDir); |
|
43 |
} |
|
44 |
log.info("creating directory: " + tmpDir.getAbsolutePath()); |
|
45 |
FileUtils.forceMkdir(tmpDir); |
|
46 |
} |
|
47 |
|
|
48 |
@Test |
|
49 |
public void testHasNext() { |
|
50 |
assertTrue(re3dataIterator.hasNext()); |
|
51 |
} |
|
52 |
|
|
53 |
@Test |
|
54 |
public void testNext() { |
|
55 |
String repo = null; |
|
56 |
if (re3dataIterator.hasNext()) { |
|
57 |
repo = re3dataIterator.next(); |
|
58 |
} |
|
59 |
assertNotNull(repo); |
|
60 |
} |
|
61 |
|
|
62 |
@Test(expected = UnsupportedOperationException.class) |
|
63 |
public void testRemove() { |
|
64 |
re3dataIterator.remove(); |
|
65 |
} |
|
66 |
|
|
67 |
@Test |
|
68 |
public void testIterator() throws IOException { |
|
69 |
|
|
70 |
for (String repo : re3dataIterator) { |
|
71 |
|
|
72 |
countRepos++; |
|
73 |
assertNotNull(repo); |
|
74 |
FileOutputStream st = new FileOutputStream(TMP_DIR + countRepos + ".xml"); |
|
75 |
IOUtils.write(repo, st); |
|
76 |
IOUtils.closeQuietly(st); |
|
77 |
|
|
78 |
|
|
79 |
} |
|
80 |
assertEquals(expectedRepos, countRepos); |
|
81 |
} |
|
82 |
|
|
83 |
@Test |
|
84 |
public void testBadIterator() throws IOException { |
|
85 |
|
|
86 |
final Iterator<String> iter = re3dataIterator.iterator(); |
|
87 |
|
|
88 |
while (iter.hasNext()) { |
|
89 |
|
|
90 |
iter.hasNext(); |
|
91 |
iter.next(); |
|
92 |
|
|
93 |
countRepos++; |
|
94 |
} |
|
95 |
assertEquals(expectedRepos, countRepos); |
|
96 |
} |
|
97 |
|
|
98 |
|
|
99 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/doiresolver/DOIResolverIteratorTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.doiresolver; |
|
2 |
|
|
3 |
import org.apache.commons.logging.Log; |
|
4 |
import org.apache.commons.logging.LogFactory; |
|
5 |
import org.junit.Assert; |
|
6 |
import org.junit.Before; |
|
7 |
import org.junit.Test; |
|
8 |
import org.junit.runner.RunWith; |
|
9 |
import org.mockito.Mock; |
|
10 |
import org.mockito.junit.MockitoJUnitRunner; |
|
11 |
|
|
12 |
import static org.mockito.Mockito.when; |
|
13 |
|
|
14 |
@RunWith(MockitoJUnitRunner.class) |
|
15 |
public class DOIResolverIteratorTest { |
|
16 |
|
|
17 |
private static final Log log = LogFactory.getLog(DOIResolverIteratorTest.class); |
|
18 |
@Mock |
|
19 |
CrossrefResolver resolver; |
|
20 |
DOIResolverIterator it; |
|
21 |
|
|
22 |
String dirpath; |
|
23 |
|
|
24 |
@Before |
|
25 |
public void setup(){ |
|
26 |
when(resolver.resolve("1")).thenReturn("RECORD1"); |
|
27 |
when(resolver.resolve("2")).thenReturn(null); |
|
28 |
when(resolver.resolve("3")).thenReturn("RECORD3"); |
|
29 |
dirpath = getClass().getResource("/eu/dnetlib/data/collector/plugins/doiresolver").getPath(); |
|
30 |
|
|
31 |
} |
|
32 |
|
|
33 |
@Test |
|
34 |
public void test(){ |
|
35 |
it = new DOIResolverIterator(dirpath, resolver, null); |
|
36 |
int count = 0; |
|
37 |
while(it.hasNext()){ |
|
38 |
String res = it.next(); |
|
39 |
log.info(res); |
|
40 |
if(count == 0) Assert.assertEquals("RECORD1", res); |
|
41 |
if(count == 1) Assert.assertEquals("RECORD3", res); |
|
42 |
count++; |
|
43 |
} |
|
44 |
Assert.assertEquals(2, count); |
|
45 |
} |
|
46 |
|
|
47 |
@Test |
|
48 |
public void testIncremental(){ |
|
49 |
it = new DOIResolverIterator(dirpath, resolver, "2050-07-13"); |
|
50 |
int count = 0; |
|
51 |
while(it.hasNext()){ |
|
52 |
String res = it.next(); |
|
53 |
count++; |
|
54 |
} |
|
55 |
Assert.assertEquals(0, count); |
|
56 |
} |
|
57 |
|
|
58 |
@Test |
|
59 |
public void testIncremental2(){ |
|
60 |
it = new DOIResolverIterator(dirpath, resolver, "2020-01-13"); |
|
61 |
int count = 0; |
|
62 |
while(it.hasNext()){ |
|
63 |
String res = it.next(); |
|
64 |
count++; |
|
65 |
} |
|
66 |
Assert.assertEquals(2, count); |
|
67 |
} |
|
68 |
|
|
69 |
@Test |
|
70 |
public void testCleanOk(){ |
|
71 |
it = new DOIResolverIterator(dirpath, resolver, null); |
|
72 |
String doi = "10.1234/1234"; |
|
73 |
Assert.assertEquals(doi, it.cleanDOI(doi)); |
|
74 |
} |
|
75 |
|
|
76 |
@Test |
|
77 |
public void testCleanHttp(){ |
|
78 |
it = new DOIResolverIterator(dirpath, resolver, null); |
|
79 |
String doi = "10.1234/1234"; |
|
80 |
String doiURL = "http://dx.doi.org/"+doi; |
|
81 |
Assert.assertEquals(doi, it.cleanDOI(doiURL)); |
|
82 |
} |
|
83 |
|
|
84 |
@Test |
|
85 |
public void testCleanHttps(){ |
|
86 |
it = new DOIResolverIterator(dirpath, resolver, null); |
|
87 |
String doi = "10.1234/1234"; |
|
88 |
String doiURL = "https://dx.doi.org/"+doi; |
|
89 |
Assert.assertEquals(doi, it.cleanDOI(doiURL)); |
|
90 |
} |
|
91 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/doiresolver/CrossrefResolverTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.doiresolver; |
|
2 |
|
|
3 |
import eu.dnetlib.data.collector.plugins.HttpConnector; |
|
4 |
import org.junit.Assert; |
|
5 |
import org.junit.Before; |
|
6 |
import org.junit.Ignore; |
|
7 |
import org.junit.Test; |
|
8 |
|
|
9 |
@Ignore |
|
10 |
public class CrossrefResolverTest { |
|
11 |
|
|
12 |
HttpConnector httpConnector; |
|
13 |
CrossrefResolver resolver; |
|
14 |
|
|
15 |
@Before |
|
16 |
public void setup(){ |
|
17 |
httpConnector = new HttpConnector(); |
|
18 |
resolver = new CrossrefResolver(); |
|
19 |
resolver.setHttpConnector(httpConnector); |
|
20 |
} |
|
21 |
|
|
22 |
@Test |
|
23 |
public void testUnexistingDOI(){ |
|
24 |
String doi = "abcd"; |
|
25 |
Assert.assertNull(resolver.resolve(doi)); |
|
26 |
} |
|
27 |
|
|
28 |
@Test |
|
29 |
public void testResolveDOI(){ |
|
30 |
String doi = "10.1016/j.carbpol.2020.115930"; |
|
31 |
String record = resolver.resolve(doi); |
|
32 |
Assert.assertNotNull(record); |
|
33 |
System.out.println(record); |
|
34 |
} |
|
35 |
|
|
36 |
@Test |
|
37 |
public void testIsValid(){ |
|
38 |
String doi = "10.5281/zenodo.3980491"; |
|
39 |
Assert.assertTrue(resolver.isValid(doi)); |
|
40 |
} |
|
41 |
|
|
42 |
@Test |
|
43 |
public void testIsNotValid(){ |
|
44 |
String doi = "https://foo/paper.pdf"; |
|
45 |
Assert.assertFalse(resolver.isValid(doi)); |
|
46 |
} |
|
47 |
|
|
48 |
|
|
49 |
|
|
50 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/opentrial/OpentrialTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.opentrial; |
|
2 |
|
|
3 |
/** |
|
4 |
* Created by miriam on 07/03/2017. |
|
5 |
*/ |
|
6 |
|
|
7 |
import java.io.BufferedWriter; |
|
8 |
import java.io.FileWriter; |
|
9 |
import java.io.PrintWriter; |
|
10 |
import java.util.Iterator; |
|
11 |
|
|
12 |
import org.junit.Ignore; |
|
13 |
import org.junit.Test; |
|
14 |
|
|
15 |
@Ignore |
|
16 |
public class OpentrialTest { |
|
17 |
|
|
18 |
@Test |
|
19 |
public void importOpentrial() throws Exception { |
|
20 |
PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter("opentrials.xml"))); |
|
21 |
OpenTrialIterator trial = new OpenTrialIterator("https://api.opentrials.net/v1/search?",null,null); |
|
22 |
Iterator<String> iterator = trial.iterator(); |
|
23 |
int parse_number = 0; |
|
24 |
while(iterator.hasNext() && parse_number < 30){ |
|
25 |
writer.println("<doc>" + iterator.next() + "</doc>"); |
|
26 |
parse_number++; |
|
27 |
} |
|
28 |
writer.close(); |
|
29 |
|
|
30 |
} |
|
31 |
|
|
32 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/rest/RestCollectorPluginTest.java | ||
---|---|---|
1 |
/** |
|
2 |
* |
|
3 |
*/ |
|
4 |
package eu.dnetlib.data.collector.plugins.rest; |
|
5 |
|
|
6 |
import java.util.HashMap; |
|
7 |
|
|
8 |
import org.junit.Assert; |
|
9 |
import org.junit.Before; |
|
10 |
import org.junit.Ignore; |
|
11 |
import org.junit.Test; |
|
12 |
|
|
13 |
import eu.dnetlib.data.collector.rmi.CollectorServiceException; |
|
14 |
import eu.dnetlib.data.collector.rmi.InterfaceDescriptor; |
|
15 |
import eu.dnetlib.data.collector.rmi.ProtocolDescriptor; |
|
16 |
|
|
17 |
/** |
|
18 |
* @author js, Andreas Czerniak |
|
19 |
* |
|
20 |
*/ |
|
21 |
public class RestCollectorPluginTest { |
|
22 |
|
|
23 |
//Settings for FCT rest endpoint |
|
24 |
|
|
25 |
private String baseUrl = "https://etl.ptcris.pt/services/searches/projects"; |
|
26 |
private String resumptionType = "page"; |
|
27 |
private String resumptionParam = "page"; |
|
28 |
private String resumptionXpath = ""; |
|
29 |
private String resultTotalXpath = "//*[local-name()='paging']/*[local-name()='maxPages']"; |
|
30 |
private String entityXpath = "//*[local-name()='ListRecords']/*[local-name()='record']"; |
|
31 |
private String resultFormatParam = ""; |
|
32 |
private String resultFormatValue = "xml"; // Change from lowerCase to one UpperCase |
|
33 |
private String resultSizeParam = "recordsPerPage"; |
|
34 |
private String resultSizeValue = "100"; |
|
35 |
private String authMethod = "basic"; |
|
36 |
private String authToken = "T1BFTkFJUkVfQURNSU46NC01ITM1NkZNOQ=="; |
|
37 |
private String resultOffsetParam = ""; |
|
38 |
private String query = "startDateFrom=1999-01-01&startDateTo=1999-12-31&pagination=true"; |
|
39 |
|
|
40 |
//private String baseUrl = "https://share.osf.io/api/v2/search/creativeworks/_search"; |
|
41 |
//private String resumptionType = "count"; |
|
42 |
//private String resumptionParam = "from"; |
|
43 |
//private String entityXpath = "//hits/hits"; |
|
44 |
//private String resumptionXpath = "//hits"; |
|
45 |
//private String resultTotalXpath = "//hits/total"; |
|
46 |
//private String resultFormatParam = "format"; |
|
47 |
//private String resultFormatValue = "json"; |
|
48 |
//private String resultSizeParam = "size"; |
|
49 |
// private String resultSizeValue = "10"; |
|
50 |
//// private String query = "q=%28sources%3ASocArXiv+AND+type%3Apreprint%29"; |
|
51 |
//private String query = "q=%28sources%3AengrXiv+AND+type%3Apreprint%29"; |
|
52 |
//// private String query = "=(sources:engrXiv AND type:preprint)"; |
|
53 |
|
|
54 |
private String protocolDescriptor = "rest_json2xml"; |
|
55 |
private InterfaceDescriptor ifDesc = new InterfaceDescriptor(); |
|
56 |
private RestCollectorPlugin rcp; |
|
57 |
|
|
58 |
@Before |
|
59 |
public void setUp() { |
|
60 |
HashMap<String, String> params = new HashMap<>(); |
|
61 |
params.put("resumptionType", resumptionType); |
|
62 |
params.put("resumptionParam", resumptionParam); |
|
63 |
params.put("resumptionXpath", resumptionXpath); |
|
64 |
params.put("resultTotalXpath", resultTotalXpath); |
|
65 |
params.put("resultFormatParam", resultFormatParam); |
|
66 |
params.put("resultFormatValue", resultFormatValue); |
|
67 |
params.put("resultSizeParam", resultSizeParam); |
|
68 |
params.put("resultSizeValue", resultSizeValue); |
|
69 |
params.put("queryParams", query); |
|
70 |
params.put("entityXpath", entityXpath); |
|
71 |
|
|
72 |
params.put("authMethod", authMethod); |
|
73 |
params.put("authToken", authToken); |
|
74 |
|
|
75 |
ifDesc.setBaseUrl(baseUrl); |
|
76 |
ifDesc.setParams(params); |
|
77 |
|
|
78 |
ProtocolDescriptor pd = new ProtocolDescriptor(); |
|
79 |
pd.setName(protocolDescriptor); |
|
80 |
rcp = new RestCollectorPlugin(); |
|
81 |
rcp.setProtocolDescriptor(pd); |
|
82 |
} |
|
83 |
|
|
84 |
@Ignore |
|
85 |
@Test |
|
86 |
public void test() throws CollectorServiceException{ |
|
87 |
|
|
88 |
int i = 0; |
|
89 |
for (String s : rcp.collect(ifDesc, "", "")) { |
|
90 |
Assert.assertTrue(s.length() > 0); |
|
91 |
i++; |
|
92 |
System.out.println(s); |
|
93 |
// if (i > 200) |
|
94 |
// break; |
|
95 |
} |
|
96 |
System.out.println(i); |
|
97 |
Assert.assertTrue(i > 0); |
|
98 |
} |
|
99 |
|
|
100 |
|
|
101 |
|
|
102 |
} |
|
103 |
|
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/rest/RestIteratorTest.java | ||
---|---|---|
1 |
/** |
|
2 |
* |
|
3 |
*/ |
|
4 |
package eu.dnetlib.data.collector.plugins.rest; |
|
5 |
|
|
6 |
import org.junit.Ignore; |
|
7 |
import org.junit.Test; |
|
8 |
|
|
9 |
/** |
|
10 |
* |
|
11 |
* @author js, Andreas Czerniak |
|
12 |
* @date 2020-04-08 |
|
13 |
*/ |
|
14 |
public class RestIteratorTest { |
|
15 |
|
|
16 |
// private String baseUrl = "https://share.osf.io/api/v2/search/creativeworks/_search"; |
|
17 |
// private String resumptionType = "count"; |
|
18 |
// private String resumptionParam = "from"; |
|
19 |
// private String resumptionXpath = ""; |
|
20 |
// private String resultTotalXpath = "//hits/total"; |
|
21 |
// private String entityXpath = "//hits/hits"; |
|
22 |
// private String resultFormatParam = "format"; |
|
23 |
// private String resultFormatValue = "Json"; // Change from lowerCase to one UpperCase |
|
24 |
// private String resultSizeParam = "size"; |
|
25 |
// private String resultSizeValue = "10"; |
|
26 |
// private String authMethod = ""; |
|
27 |
// private String authToken = ""; |
|
28 |
// private String resultOffsetParam = "cursor"; |
|
29 |
// private String query = "q=%28sources%3ASocArXiv+AND+type%3Apreprint%29"; |
|
30 |
|
|
31 |
private String baseUrl = "https://etl.ptcris.pt/services/searches/projects"; |
|
32 |
private String resumptionType = "page"; |
|
33 |
private String resumptionParam = "page"; |
|
34 |
private String resumptionXpath = ""; |
|
35 |
private String resultTotalXpath = "//*[local-name()='paging']/*[local-name()='maxPages']"; |
|
36 |
private String entityXpath = "//*[local-name()='ListRecords']/*[local-name()='record']"; |
|
37 |
private String resultFormatParam = ""; |
|
38 |
private String resultFormatValue = "xml"; // Change from lowerCase to one UpperCase |
|
39 |
private String resultSizeParam = "recordsPerPage"; |
|
40 |
private String resultSizeValue = "100"; |
|
41 |
private String authMethod = "basic"; |
|
42 |
private String authToken = "T1BFTkFJUkVfQURNSU46NC01ITM1NkZNOQ=="; |
|
43 |
private String resultOffsetParam = ""; |
|
44 |
private String query = "startDateFrom=2019-01-01&startDateTo=2019-12-31&pagination=true"; |
|
45 |
@Ignore |
|
46 |
@Test |
|
47 |
public void test(){ |
|
48 |
final RestIterator iterator = new RestIterator(baseUrl, resumptionType, resumptionParam, resumptionXpath, resultTotalXpath, resultFormatParam, resultFormatValue, resultSizeParam, resultSizeValue, query, entityXpath, authMethod, authToken, resultOffsetParam); |
|
49 |
int i =20; |
|
50 |
while (iterator.hasNext() && i > 0) { |
|
51 |
String result = iterator.next(); |
|
52 |
System.out.println(result); |
|
53 |
i--; |
|
54 |
} |
|
55 |
} |
|
56 |
} |
|
57 |
|
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/java/eu/dnetlib/data/collector/plugins/datacite/DataciteESIteratorTest.java | ||
---|---|---|
1 |
package eu.dnetlib.data.collector.plugins.datacite; |
|
2 |
|
|
3 |
import org.apache.commons.io.IOUtils; |
|
4 |
import org.junit.Test; |
|
5 |
|
|
6 |
import java.io.IOException; |
|
7 |
|
|
8 |
public class DataciteESIteratorTest { |
|
9 |
|
|
10 |
private DataciteESIterator dataciteIterator; |
|
11 |
|
|
12 |
@Test |
|
13 |
public void testDecompression() throws IOException { |
|
14 |
String input = IOUtils.toString(DataciteESIteratorTest.class.getResource("base64_compressed_input")); |
|
15 |
String output = DataciteESIterator.decompression(input.getBytes()); |
|
16 |
System.out.println(output); |
|
17 |
} |
|
18 |
} |
modules/dnet-collector-plugins/tags/dnet-collector-plugins-1.5.9/src/test/resources/eu/dnetlib/data/collector/plugins/datasets/pangaea-journals.csv | ||
---|---|---|
1 |
1|A + U-Architecture and Urbanism| |0389-9160|Monthly| |A & U PUBL CO LTD |
|
2 |
2|A Rocha Observatory Report| | |Annual| |AROCHA TRUST |
|
3 |
3|AAA-Arbeiten aus Anglistik und Amerikanistik| |0171-5410|Semiannual| |GUNTER NARR VERLAG |
|
4 |
4|AAAAI Annual Meeting Abstracts of Scientific Papers| | |Annual| |MOSBY-ELSEVIER |
|
5 |
5|AAAS Annual Meeting and Science Innovation Exposition| | |Annual| |AMER ASSOC ADVANCEMENT SCIENCE |
|
6 |
6|AACL Bioflux| |1844-8143|Quarterly| |BIOFLUX SRL |
|
7 |
7|AAPG Bulletin|Geosciences / Petroleum|0149-1423|Monthly| |AMER ASSOC PETROLEUM GEOLOGIST |
|
8 |
8|AAPS Journal|Pharmacology & Toxicology /|1550-7416|Quarterly| |SPRINGER |
|
9 |
9|AAPS PharmSciTech|Pharmacology & Toxicology /|1530-9932|Quarterly| |SPRINGER |
|
10 |
10|Aardkundige Mededelingen| |0250-7803|Irregular| |LEUVEN UNIV PRESS |
|
11 |
11|AASP Contributions Series| |0160-8843|Irregular| |AMER ASSOC STRATIGRAPHIC PALYNOLOGISTS FOUNDATION |
|
12 |
12|AATCC Review|Materials Science|1532-8813|Monthly| |AMER ASSOC TEXTILE CHEMISTS COLORISTS |
|
13 |
13|ABA Bank Marketing| |1539-7890|Monthly| |BANK MARKETING ASSOC |
|
14 |
14|Abacus-A Journal of Accounting Finance and Business Studies|Economics & Business / Accounting; Finance|0001-3072|Tri-annual| |WILEY-BLACKWELL PUBLISHING |
|
15 |
15|ABC Taxa| |1784-1291|Irregular| |Royal Belgian Institute of Natural Sciences |
|
16 |
16|Abdominal Imaging|Clinical Medicine / Abdomen; Diagnostic imaging; Gastrointestinal system; Urinary organs; Diagnostic Imaging; Gastrointestinal Diseases; Urologic Diseases; Tractus gastro-intestinal; Gastroentérologie; Maagdarmstelsel; Radiodiagnostiek; Echografie|0942-8925|Bimonthly| |SPRINGER |
|
17 |
17|Abhandlung Naturhistorische Gesellschaft Nuernberg| |0077-6149|Irregular| |NATURHISTORISCHE GESELLSCHAFT NUERNBERG E V |
|
18 |
18|Abhandlungen aus dem Mathematischen Seminar der Universität Hamburg|Mathematics / Mathematics|0025-5858|Annual| |SPRINGER HEIDELBERG |
|
19 |
19|Abhandlungen aus dem Westfaelischen Museum fuer Naturkunde| |0175-3495|Quarterly| |WESTFAELISCHES MUSEUM NATURKUNDE |
|
20 |
20|Abhandlungen der Delattinia| |0948-6526|Annual| |EIGENVERLAG DELATTINIA |
|
21 |
21|Abhandlungen der Geologischen Bundesanstalt-Vienna| |0378-0864|Irregular| |GEOLOGISCHE BUNDESANSTALT |
|
22 |
22|Abhandlungen der Senckenberg Gesellschaft fur Naturforschung| |1868-0356|Irregular| |E. SCHWEIZERBART SCIENCE PUBLISHERS |
|
23 |
23|Abhandlungen der Zoologisch-Botanischen Gesellschaft in Oesterreich| |0084-5639|Irregular| |ZOOLOGISCH-BOTANISCHE GESELLSCHAFT IN OESTERREICH |
|
24 |
24|Abhandlungen des Naturwissenschaftlichen Vereins zu Bremen|natural science|0340-3718|Irregular|http://www.nwv-bremen.de/publik/|NATURWISSENSCHAFTLICHER VEREIN ZU BREMEN |
|
25 |
25|Abhandlungen und Berichte aus dem Museum Heineanum| |0947-1057|Irregular| |MUSEUM HEINEANUM |
|
26 |
26|Abhandlungen und Berichte des Museums der Natur Gotha| |0138-1857|Irregular| |MUSEUM NATUR GOTHA |
|
27 |
27|Abhandlungen und Berichte des Naturkundemuseums Goerlitz| |0373-7586|Semiannual| |STAATLICHES MUSEUM NATURKUNDE GOERLITZ |
|
28 |
28|Abhandlungen und Berichte fuer Naturkunde| |0945-7658|Annual| |MUSEUM NATURKUNDE |
|
29 |
29|Abstract and Applied Analysis|Mathematics / Mathematical analysis|1085-3375|Monthly| |HINDAWI PUBLISHING CORPORATION |
|
30 |
30|Abstracts of Papers of the American Chemical Society| |0065-7727|Semiannual| |AMER CHEMICAL SOC |
|
31 |
31|Abstracts of the General Meeting of the American Society for Microbiology| |1060-2011|Annual| |AMER SOC MICROBIOLOGY |
|
32 |
32|Abstracts of the Interscience Conference on Antimicrobial Agents and Chemotherapy| |0733-6373|Annual| |AMER SOC MICROBIOLOGY |
|
33 |
33|Academia Nacional de Ciencias-Cordoba Argentina-Miscelanea| |0325-3406|Irregular| |ACAD NACIONAL CIENCIAS |
|
34 |
34|Academia-Revista Latinoamericana de Administracion|Economics & Business|1012-8255|Semiannual| |CONSEJO LATINOAMERICANO ESCUELAS ADM-CLADEA |
|
35 |
35|Academic Emergency Medicine|Clinical Medicine / Emergency medicine; Emergency Medicine; Geneeskunde; Spoedgevallen; Ongevallen; Médecine d'urgence|1069-6563|Monthly| |WILEY-BLACKWELL PUBLISHING |
|
36 |
36|Academic Journal of Entomology| |1995-8994|Semiannual| |INT DIGITAL ORGANIZATION SCIENTIFIC INFORMATION-IDOSI |
|
37 |
37|Academic Medicine|Clinical Medicine / Medical education; Medicine; Education, Medical; Geneeskunde; Onderwijs; Médecine; Enseignement médical|1040-2446|Monthly| |LIPPINCOTT WILLIAMS & WILKINS |
|
38 |
38|Academic Pediatrics|Clinical Medicine /|1876-2859|Bimonthly| |ELSEVIER SCIENCE INC |
|
39 |
39|Academic Psychiatry|Psychiatry/Psychology / Psychiatry|1042-9670|Quarterly| |AMER PSYCHIATRIC PUBLISHING |
|
40 |
40|Academic Radiology|Clinical Medicine / Radiography; Radiology|1076-6332|Monthly| |ELSEVIER SCIENCE INC |
|
41 |
41|Academie Royale des Sciences D Outre-Mer Bulletin des Seances| |0001-4176|Quarterly| |ACAD ROYAL SCI |
|
42 |
42|Academie Royale des Sciences D Outre-Mer Memoires Classe des Sciences Naturelles et Medicales| |0379-1920|Quarterly| |ACAD ROYAL SCI |
|
43 |
43|Academie Serbe des Sciences et des Arts-Bulletin Classe des Sciences Mathematiques et Naturelles| |0352-5740|Semiannual| |SRPSKA AKAD NAUKA I UMETNOSTI |
|
44 |
44|Academy of Management Annals|Economics & Business|1941-6067|Annual| |ROUTLEDGE JOURNALS |
|
45 |
45|Academy of Management Journal|Economics & Business / Industrial management|0001-4273|Bimonthly| |ACAD MANAGEMENT |
|
46 |
46|Academy of Management Learning & Education|Economics & Business|1537-260X|Quarterly| |ACAD MANAGEMENT |
|
47 |
47|Academy of Management Perspectives|Economics & Business|1558-9080|Quarterly| |ACAD MANAGEMENT |
|
48 |
48|Academy of Management Review|Economics & Business / Management; Gestion|0363-7425|Quarterly| |ACAD MANAGEMENT |
|
49 |
49|Acadiensis| |0044-5851|Semiannual| |UNIV NEW BRUNSWICK |
|
50 |
50|Acari Bibliographia Acarologica| |1618-8977|Tri-annual| |STAATLICHES MUSEUM NATURKUNDE GOERLITZ |
|
51 |
51|Acarina| |0132-8077|Semiannual| |KMK SCIENTIFIC PRESS LTD |
|
52 |
52|Acarologia|Plant & Animal Science /|0044-586X|Annual| |ACAROLOGIA-UNIVERSITE PAUL VALERY |
|
53 |
53|Accident Analysis and Prevention|Social Sciences, general / Accidents; Accidents, Traffic|0001-4575|Bimonthly| |PERGAMON-ELSEVIER SCIENCE LTD |
|
54 |
54|Accountability in Research-Policies and Quality Assurance|Research; Ethics; Program Evaluation / Research; Ethics; Program Evaluation|0898-9621|Bimonthly| |TAYLOR & FRANCIS LTD |
|
55 |
55|Accounting and Business Research|Economics & Business|0001-4788|Quarterly| |INST CHARTERED ACCOUNTANTS ENGLAND & WALES |
|
56 |
56|Accounting and Finance|Economics & Business / Accounting; Finance / Accounting; Finance|0810-5391|Quarterly| |WILEY-BLACKWELL PUBLISHING |
|
57 |
57|Accounting Horizons|Economics & Business / Accounting|0888-7993|Quarterly| |AMER ACCOUNTING ASSOC |
|
58 |
58|Accounting Organizations and Society|Economics & Business / Accounting; Social accounting|0361-3682|Bimonthly| |PERGAMON-ELSEVIER SCIENCE LTD |
|
59 |
59|Accounting Review|Economics & Business / Accounting; Comptabilité; ACCOUNTING|0001-4826|Quarterly| |AMER ACCOUNTING ASSOC |
|
60 |
60|Accounts of Chemical Research|Chemistry / Chemistry; Research; Chimie; Chemie|0001-4842|Monthly| |AMER CHEMICAL SOC |
|
61 |
61|Accreditation and Quality Assurance|Chemistry /|0949-1775|Monthly| |SPRINGER |
|
62 |
62|ACI Materials Journal|Materials Science|0889-325X|Bimonthly| |AMER CONCRETE INST |
|
63 |
63|ACI Structural Journal|Engineering|0889-3241|Bimonthly| |AMER CONCRETE INST |
|
64 |
64|ACM Computing Surveys|Computer Science / Electronic digital computers; Ordinateurs; Computers; Dataprocessing|0360-0300|Quarterly| |ASSOC COMPUTING MACHINERY |
|
65 |
65|ACM Journal on Emerging Technologies in Computing Systems|Computer Science / Computer systems; Informatique; Ordinateurs|1550-4832|Quarterly| |ASSOC COMPUTING MACHINERY |
|
66 |
66|ACM SIGPLAN Notices|Computer Science / Programming languages (Electronic computers)|0362-1340|Monthly| |ASSOC COMPUTING MACHINERY |
|
67 |
67|ACM Transactions on Algorithms|Computer Science / Computer programming; Computer algorithms|1549-6325|Quarterly| |ASSOC COMPUTING MACHINERY |
|
68 |
68|ACM Transactions on Applied Perception|Computer Science / Human-computer interaction; Computer graphics; Psychology; Infographie; Psychologie; Interaction homme-machine (Informatique); Computer Graphics|1544-3558|Quarterly| |ASSOC COMPUTING MACHINERY |
|
69 |
69|ACM Transactions on Architecture and Code Optimization|Computer Science / Computer architecture; Compiling (Electronic computers)|1544-3566|Quarterly| |ASSOC COMPUTING MACHINERY |
|
70 |
70|ACM Transactions on Autonomous and Adaptive Systems|Computer Science / Intelligent agents (Computer software); Computers; Computer science|1556-4665|Quarterly| |ASSOC COMPUTING MACHINERY |
|
71 |
71|ACM Transactions on Computational Logic|Computer Science / Computer logic; Logic, Symbolic and mathematical; Computer science; Logique informatique; Logique symbolique et mathématique; Informatique|1529-3785|Quarterly| |ASSOC COMPUTING MACHINERY |
|
72 |
72|ACM Transactions on Computer Systems|Computer Science / System design; Computer architecture; Operating systems (Computers); Computersystemen; Ordinateurs|0734-2071|Quarterly| |ASSOC COMPUTING MACHINERY |
|
73 |
73|ACM Transactions on Computer-Human Interaction|Computer Science /|1073-0516|Quarterly| |ASSOC COMPUTING MACHINERY |
|
74 |
74|ACM Transactions on Database Systems|Computer Science / Database management; Bases de données|0362-5915|Quarterly| |ASSOC COMPUTING MACHINERY |
|
75 |
75|ACM Transactions on Design Automation of Electronic Systems|Computer Science / Electronic systems; Electronic circuit design; Computer-aided design; Integrated circuits; Circuits électroniques; Conception assistée par ordinateur|1084-4309|Quarterly| |ASSOC COMPUTING MACHINERY |
|
76 |
76|ACM Transactions on Embedded Computing Systems|Computer Science / Embedded computer systems|1539-9087|Quarterly| |ASSOC COMPUTING MACHINERY |
|
77 |
77|ACM Transactions on Graphics|Computer Science / Computer graphics; Infographie; Grafische voorstellingen; Computermethoden|0730-0301|Quarterly| |ASSOC COMPUTING MACHINERY |
|
78 |
78|ACM Transactions on Information and System Security|Computer Science / Data protection; Computer security; Data encryption (Computer science); Information storage and retrieval systems|1094-9224|Quarterly| |ASSOC COMPUTING MACHINERY |
|
79 |
79|ACM Transactions on Information Systems|Computer Science / Electronic data processing; Information storage and retrieval systems; Information retrieval; Informatique; Systèmes d'information; Recherche de l'information; Informatiesystemen|1046-8188|Quarterly| |ASSOC COMPUTING MACHINERY |
|
80 |
80|ACM Transactions on Internet Technology|Computer Science / Internet|1533-5399|Quarterly| |ASSOC COMPUTING MACHINERY |
|
81 |
81|ACM Transactions on Mathematical Software|Computer Science / Computer programming; Mathematics; Programmation (Informatique); Mathématiques|0098-3500|Quarterly| |ASSOC COMPUTING MACHINERY |
|
82 |
82|ACM Transactions on Modeling and Computer Simulation|Computer Science / Computer simulation; Mathematical models; Simulation par ordinateur; Modèles mathématiques|1049-3301|Quarterly| |ASSOC COMPUTING MACHINERY |
|
83 |
83|ACM Transactions on Multimedia Computing Communications and Applications|Multimedia systems; Multimedia communications|1551-6857|Quarterly| |ASSOC COMPUTING MACHINERY |
|
84 |
84|ACM Transactions on Programming Languages and Systems|Computer Science / Programming languages (Electronic computers); Computer programming; Langages de programmation; Programmation (Informatique)|0164-0925|Bimonthly| |ASSOC COMPUTING MACHINERY |
|
85 |
85|ACM Transactions on Sensor Networks|Engineering / Sensor networks|1550-4859|Quarterly| |ASSOC COMPUTING MACHINERY |
|
86 |
86|ACM Transactions on Software Engineering and Methodology|Computer Science / Software engineering; Génie logiciel|1049-331X|Quarterly| |ASSOC COMPUTING MACHINERY |
|
87 |
87|ACM Transactions on the Web|Computer Science / World Wide Web|1559-1131|Quarterly| |ASSOC COMPUTING MACHINERY |
|
88 |
88|Acoustical Physics|Physics / Sound|1063-7710|Bimonthly| |MAIK NAUKA/INTERPERIODICA/SPRINGER |
|
89 |
89|Acoustics Australia|Physics|0814-6039|Tri-annual| |AUSTRALIAN ACOUSTICAL SOC |
|
90 |
90|Acrocephalus| |0351-2851|Bimonthly| |DOPPS-BIRDLIFE SLOVENIA |
|
91 |
91|Across Languages and Cultures|Social Sciences, general / Translating and interpreting; Language and languages|1585-1923|Semiannual| |AKADEMIAI KIADO RT |
|
92 |
92|ACS Applied Materials & Interfaces|Materials Science /|1944-8244|Monthly| |AMER CHEMICAL SOC |
|
93 |
93|ACS Chemical Biology|Chemistry / Biochemistry|1554-8929|Monthly| |AMER CHEMICAL SOC |
|
94 |
94|ACS Chemical Neuroscience| |1948-7193|Monthly| |AMER CHEMICAL SOC |
|
95 |
95|ACS Medicinal Chemistry Letters| |1948-5875|Monthly| |AMER CHEMICAL SOC |
|
96 |
96|ACS Nano|Chemistry / Nanoscience; Nanotechnology|1936-0851|Monthly| |AMER CHEMICAL SOC |
|
97 |
97|ACS-Agriculturae Conspectus Scientificus| |1331-7768|Quarterly| |AGRONOMSKI FAKULTET |
|
98 |
98|ACSMS Health & Fitness Journal|Clinical Medicine / Exercise; Physical fitness; Health; Health Behavior; Physical Fitness|1091-5397|Bimonthly| |LIPPINCOTT WILLIAMS & WILKINS |
|
99 |
99|Acta Acustica united with Acustica|Physics / Sound|1610-1928|Bimonthly| |S HIRZEL VERLAG |
|
100 |
100|Acta Adriatica|Plant & Animal Science|0001-5113|Semiannual| |INST OCEANOGRAFIJU I RIBARSTVO |
|
101 |
101|Acta Agriculturae Scandinavica Section A-Animal Science|Plant & Animal Science / Animal culture; Animal nutrition / Animal culture; Animal nutrition / Animal culture; Animal nutrition|0906-4702|Quarterly| |TAYLOR & FRANCIS AS |
|
102 |
102|Acta Agriculturae Scandinavica Section B-Soil and Plant Science|Agricultural Sciences / Horticulture; Soil science; Crops and soils; Plant-soil relationships / Horticulture; Soil science; Crops and soils; Plant-soil relationships|0906-4710|Bimonthly| |TAYLOR & FRANCIS AS |
|
103 |
103|Acta agriculturae Slovenica| |1581-9175|Quarterly| |UNIV LJUBLJANA |
|
104 |
104|Acta Agriculturae Universitatis Jiangxiensis| |1000-2286|Bimonthly| |JIANGXI AGRICULTURAL UNIV |
|
105 |
105|Acta Agrobotanica| |0065-0951|Semiannual| |POLSKIE TOWARZYSTWO BOTANICZNE |
|
106 |
106|Acta Agronomica Hungarica| |0238-0161|Quarterly| |AKADEMIAI KIADO RT |
|
107 |
107|Acta Agrophysica| |1234-4125|Irregular| |POLSKA AKAD NAUK |
|
108 |
108|Acta Albertina Ratisbonensia| |0515-2712|Irregular| |NATURWISSENSCHAFTLICHER VEREIN REGENSBURG E V |
|
109 |
109|Acta Alimentaria|Agricultural Sciences / Food|0139-3006|Quarterly| |AKADEMIAI KIADO RT |
|
110 |
110|Acta Amazonica|Natural history; Science; Natuurlijke historie|0044-5967|Irregular| |INST NACIONAL PESQUISAS AMAZONIA |
|
111 |
111|Acta Anaesthesiologica Scandinavica|Clinical Medicine / Anesthesiology; Critical care medicine; Anesthésie|0001-5172|Monthly| |WILEY-BLACKWELL PUBLISHING |
|
112 |
112|Acta Analytica-International Periodical for Philosophy in the Analytical Tradition|Analysis (Philosophy); Psychology|0353-5150|Quarterly| |SPRINGER |
|
113 |
113|Acta Anatomica Nipponica| |0022-7722|Quarterly| |JAPANESE ASSOC ANATOMISTS |
|
114 |
114|Acta Anatomica Sinica| |0529-1356|Bimonthly| |CHINESE SOC ANATOMICAL SCIENCES |
|
115 |
115|Acta Anthropologica Sinica| |1000-3193|Quarterly| |ACAD SIN BEIJING |
|
116 |
116|Acta Applicandae Mathematicae|Mathematics / Mathematics|0167-8019|Monthly| |SPRINGER |
|
117 |
117|Acta Arachnologica|Spiders; Arachnologie|0001-5202|Semiannual| |ARACHNOLOGICAL SOC JAPAN |
|
118 |
118|Acta Arachnologica Sinica| |1005-9628|Semiannual| |ARACHNOL SOC CHINA |
|
119 |
119|Acta Archaeologica|Social Sciences, general / Archaeology|0065-101X|Semiannual| |WILEY-BLACKWELL PUBLISHING |
|
120 |
120|Acta Arithmetica|Mathematics / Mathematics; Number theory|0065-1036|Semimonthly| |POLISH ACAD SCIENCES INST MATHEMATICS |
|
121 |
121|Acta Astronautica|Engineering / Astronautics|0094-5765|Semimonthly| |PERGAMON-ELSEVIER SCIENCE LTD |
|
122 |
122|Acta Astronomica|Space Science|0001-5237|Quarterly| |COPERNICUS FOUNDATION POLISH ASTRONOMY |
|
123 |
123|Acta Biochimica et Biophysica Sinica|Biology & Biochemistry / Biochemistry; Biophysics|1672-9145|Semiannual| |OXFORD UNIV PRESS |
|
124 |
124|Acta Biochimica Polonica|Biology & Biochemistry|0001-527X|Quarterly| |ACTA BIOCHIMICA POLONICA |
|
125 |
125|Acta bioethica|Social Sciences, general /|0717-5906|Semiannual| |PAN AMER HEALTH ORGANIZATION |
|
126 |
126|Acta Biologiae Experimentalis Sinica| |0001-5334|Quarterly| |ACAD SIN SHANGHAI |
|
127 |
127|Acta Biologica Benrodis| |0177-9214|Semiannual| |NATURKUNDLICHES HEIMATMUSEUM BENRATH |
|
128 |
128|Acta Biologica Colombiana| |0120-548X|Semiannual| |UNIV NAC COLOMBIA |
|
129 |
129|Acta Biologica Cracoviensia Series Botanica|Plant & Animal Science|0001-5296|Annual| |POLSKA AKAD NAUK |
|
130 |
130|Acta Biologica Cracoviensia Series Zoologia| |0001-530X|Annual| |POLISH ACAD SCIENCES |
|
131 |
131|Acta Biologica Debrecina| |0567-7327|Irregular| |KOSSUTH LAJOS TUDOMANYEGYETEM |
|
132 |
132|Acta Biologica Hungarica|Biology & Biochemistry / Biology|0236-5383|Quarterly| |AKADEMIAI KIADO RT |
|
133 |
133|Acta Biologica Panamensis| |2072-9405|Semiannual| |COLEGIO BIOLOGOS PANAMA-COBIOPA |
|
134 |
134|Acta Biologica Paranaense| |0301-2123|Annual| |UNIV FEDERAL PARANA |
|
135 |
135|Acta Biologica Silesiana| |0860-2441|Irregular| |WYDAWNICTWO UNIWERSYTETU SLASKIEGO |
|
136 |
136|Acta Biologica Slovenica| |1408-3671|Irregular| |DRUSTVO BIOLOGOV SLOVENIJE |
|
137 |
137|Acta Biologica Szegediensis| |1588-385X|Annual| |UNIV SZEGED |
|
138 |
138|Acta Biologica Universitatis Daugavpiliensis| |1407-8953|Semiannual| |UNIV DAUGAVPILS |
|
139 |
139|Acta Biologica Venezuelica| |0001-5326|Quarterly| |UNIV CENTRAL VENEZUELA |
|
140 |
140|Acta Biomaterialia|Microbiology / Biomedical materials; Biocompatible Materials|1742-7061|Bimonthly| |ELSEVIER SCI LTD |
|
141 |
141|Acta Bioquimica Clinica Latinoamericana|Biology & Biochemistry|0325-2957|Quarterly| |FEDERACION BIOQUIMICA PROVINCIA BUENOS AIRES |
|
142 |
142|Acta Biotheoretica|Biology & Biochemistry / Biology; Zoology|0001-5342|Quarterly| |SPRINGER |
|
143 |
143|Acta Borealia| |0800-3831|Semiannual| |ROUTLEDGE JOURNALS |
|
144 |
144|Acta Botanica Boreali-Occidentalia Sinica| |1000-4025|Bimonthly| |SHAANXI SCIENTIFIC & TECHNOLOGICAL PRESS |
|
145 |
145|Acta Botanica Brasilica|Plant & Animal Science / Botany|0102-3306|Quarterly| |SOC BOTANICA BRASIL |
|
146 |
146|Acta Botanica Croatica|Plant & Animal Science|0365-0588|Semiannual| |UNIV ZAGREB |
|
147 |
147|Acta Botanica Fennica| |0001-5369|Irregular| |FINNISH ZOOLOGICAL BOTANICAL PUBLISHING BOARD |
|
148 |
148|Acta Botanica Gallica|Plant & Animal Science|1253-8078|Quarterly| |SOC BOTANIQUE FRANCE |
|
149 |
149|Acta Botanica Hungarica|Botany; Plants|0236-6495|Quarterly| |AKADEMIAI KIADO RT |
|
150 |
150|Acta Botanica Indica| |0379-508X|Semiannual| |SOC ADVANCEMENT BOTANY |
|
151 |
151|Acta Botanica Islandica| |0374-5066|Irregular| |NATTURUFRAEOISTOFNUN NOROURLANDS-AKUREYRI MUSEUM NATURAL HISTORY |
|
152 |
152|Acta Botanica Malacitana| |0210-9506|Annual| |UNIV MALAGA |
|
153 |
153|Acta Botanica Mexicana|Plant & Animal Science|0187-7151|Quarterly| |INST ECOLOGIA AC |
|
154 |
154|Acta Botanica Venezuelica| |0084-5906|Irregular| |FUNDACION INST BOTANICO VENEZUELA DR TOBIAS LASSER |
|
155 |
155|Acta Botanica Yunnanica|Botany|0253-2700|Bimonthly| |KUNMING INST BOTANY |
|
156 |
156|Acta Cardiologica|Clinical Medicine /|0001-5385|Bimonthly| |ACTA CARDIOLOGICA |
|
157 |
157|Acta Cardiologica Sinica|Clinical Medicine|1011-6842|Quarterly| |TAIWAN SOC CARDIOLOGY |
|
158 |
158|Acta Carsologica|Geosciences|0583-6050|Tri-annual| |KARST RESEARCH INST ZRC SAZU |
|
159 |
159|Acta Chimica Sinica|Chemistry|0567-7351|Semimonthly| |SCIENCE CHINA PRESS |
|
160 |
160|Acta Chimica Slovenica|Chemistry|1318-0207|Quarterly| |SLOVENSKO KEMIJSKO DRUSTVO |
|
161 |
161|Acta Chiropterologica|Plant & Animal Science / Bats|1508-1109|Semiannual| |MUSEUM & INST ZOOLOGY PAS-POLISH ACAD SCIENCES |
|
162 |
162|Acta Chirurgiae Orthopaedicae et Traumatologiae Cechoslovaca|Clinical Medicine|0001-5415|Bimonthly| |GALEN SRO |
|
163 |
163|Acta Chirurgica Belgica|Clinical Medicine|0001-5458|Bimonthly| |ACTA MEDICAL BELGICA |
|
164 |
164|Acta Chromatographica|Chemistry / Chromatographic analysis; Chromatography|1233-2356|Quarterly| |AKADEMIAI KIADO RT |
|
165 |
165|Acta Cientifica Venezolana| |0001-5504|Quarterly| |ASOCIACION VENEZOLANA PARA EL AVANCE DE LA CIENCIA |
|
166 |
166|Acta Cirurgica Brasileira|Clinical Medicine / Surgery, Operative; Surgical Procedures, Operative|0102-8650|Bimonthly| |ACTA CIRURGICA BRASILEIRA |
|
167 |
167|Acta Classica| |0065-1141|Annual| |UNIV FREE STATE |
|
168 |
168|Acta Clinica Belgica|Clinical Medicine|0001-5512|Bimonthly| |ACTA CLINICA BELGICA |
|
169 |
169|Acta Clinica Croatica|Clinical Medicine|0353-9466|Quarterly| |SESTRE MILOSRDNICE UNIV HOSPITAL |
|
170 |
170|Acta Coleopterologica-Munich| |0178-7217|Semiannual| |SOC COLEOPTEROLOGICA E V |
|
171 |
171|Acta Conchyliorum| |0721-1635|Irregular| |CLUB CONCHYLIA |
|
172 |
172|Acta Crystallographica Section A|Chemistry / Crystallography; Crystallization; Cristallographie / Crystallography; Cristallographie|0108-7673|Bimonthly| |WILEY-BLACKWELL PUBLISHING |
|
173 |
173|Acta Crystallographica Section B-Structural Science|Chemistry / Crystallization; Crystallography; Cristallisation; Cristallographie|0108-7681|Bimonthly| |WILEY-BLACKWELL PUBLISHING |
|
174 |
174|Acta Crystallographica Section C-Crystal Structure Communications|Chemistry / Crystallography; Crystals|0108-2701|Monthly| |WILEY-BLACKWELL PUBLISHING |
|
175 |
175|Acta Crystallographica Section D-Biological Crystallography|Chemistry / X-ray crystallography; Crystallography; Biomolecules|0907-4449|Monthly| |WILEY-BLACKWELL PUBLISHING |
|
176 |
176|Acta Crystallographica Section E-Structure Reports Online|Chemistry /|1600-5368|Monthly| |WILEY-BLACKWELL PUBLISHING |
|
177 |
177|Acta Crystallographica Section F-Structural Biology and Crystallization Communications|Chemistry /|1744-3091|Monthly| |WILEY-BLACKWELL PUBLISHING |
|
178 |
178|Acta Cytologica|Clinical Medicine|0001-5547|Bimonthly| |SCI PRINTERS & PUBL INC |
|
179 |
179|Acta Dermato-Venereologica|Clinical Medicine / Dermatology; Sexually transmitted diseases; Sexually Transmitted Diseases; Dermatologie; Maladies transmises sexuellement; Seksueel overdraagbare aandoeningen|0001-5555|Bimonthly| |ACTA DERMATO-VENEREOLOGICA |
|
180 |
180|Acta Dermatovenerologica Croatica|Clinical Medicine|1330-027X|Quarterly| |CROATION DERMATOVENEROLOGICAL SOC |
|
181 |
181|Acta Diabetologica|Biology & Biochemistry / Diabetes; Diabetes Mellitus / Diabetes; Diabetes Mellitus|0940-5429|Quarterly| |SPRINGER |
|
182 |
182|Acta Ecologica Sinica| |1000-0933|Quarterly| |SCIENCE PRESS |
|
183 |
183|Acta Endocrinologica-Bucharest|Clinical Medicine /|1841-0987|Quarterly| |EDITURA ACAD ROMANE |
|
184 |
184|Acta Endoscopica|Clinical Medicine / Cineradiography; Endoscopy|0240-642X|Bimonthly| |SPRINGER |
|
185 |
185|Acta Entomologica Bulgarica| |1310-5914|Irregular| |BULGARIAN ENTOMOLOGICAL SOC |
|
186 |
186|Acta Entomologica Chilena| |0716-5072|Annual| |INST ENTOMOLOGIA |
|
187 |
187|Acta Entomologica Iberica E Macaronesica| |0400-4000|Irregular| |SOC PORTUGUESA ENTOMOLOGIA |
|
188 |
188|Acta Entomologica Musei Nationalis Pragae|Plant & Animal Science|0374-1036|Semiannual| |NARODNI MUZEUM - PRIRODOVEDECKE MUZEUM |
|
189 |
189|Acta Entomologica Serbica| |0354-9410|Semiannual| |ENTOMOLOGICAL SOC SERBIA |
|
190 |
190|Acta Entomologica Silesiana| |1230-7777|Irregular| |SILESIAN ENTOMOLOGICAL SOC |
|
191 |
191|Acta Entomologica Sinica| |0454-6296|Bimonthly| |SCIENCE CHINA PRESS |
|
192 |
192|Acta Entomologica Slovenica| |1318-1998|Semiannual| |SLOVENSKO ENTOMOLOSKO DRUSTVO STEFANA MICHIELIJA V LJUBLJANI |
|
193 |
193|acta ethologica|Social Sciences, general / Animal behavior; Human behavior; Psychobiology; Behavior, Animal; Behavior|0873-9749|Semiannual| |SPRINGER HEIDELBERG |
|
194 |
194|Acta Facultatis Medicae Fluminensis| |0065-1206|Semiannual| |SVEUCILISTA U RIJECI |
|
195 |
195|Acta Gastro-Enterologica Belgica|Clinical Medicine|0001-5644|Quarterly| |UNIV CATHOLIQUE LOUVAIN-UCL |
|
196 |
196|Acta Gastroenterologica Latinoamericana| |0300-9033|Bimonthly| |SOC ARGENTINA GASTROENTEROLOGIA |
|
197 |
197|Acta Geneticae Medicae et Gemellologiae| |0001-5660|Quarterly| |MENDEL INST |
|
198 |
198|Acta Geodaetica et Geophysica Hungarica|Geosciences / Geodesy; Geophysics|1217-8977|Quarterly| |AKADEMIAI KIADO RT |
|
199 |
199|Acta Geodynamica et Geomaterialia| |1214-9705|Quarterly| |ACAD SCI CZECH REPUBLIC INST ROCK STRUCTURE & MECHANICS |
|
200 |
200|Acta Geographica Slovenica-Geografski Zbornik|Social Sciences, general /|1581-6613|Semiannual| |GEOGRAFSKI INST ANTONA MELIKA ZRC SAZU |
|
201 |
201|Acta Geologica Hungarica|Geology|0236-5278|Quarterly| |AKADEMIAI KIADO RT |
|
202 |
202|Acta Geologica Lilloana| |0567-7513|Irregular| |FUNDACION MIGUEL LILLO |
|
203 |
203|Acta Geologica Polonica|Geosciences|0001-5709|Quarterly| |WYDAWNICTWO NAUKOWE INVIT |
|
204 |
204|Acta Geologica Sinica-English Edition|Geosciences /|1000-9515|Quarterly| |WILEY-BLACKWELL PUBLISHING |
|
205 |
205|Acta Geologica Taiwanica| |0065-1265|Annual| |NATL TAIWAN UNIV |
|
206 |
206|Acta Geologica Universitatis Comenianae| |1335-2830|Annual| |UNIV KOMENSKEHO |
|
207 |
207|Acta Geophysica|Geosciences /|1895-6572|Quarterly| |VERSITA |
|
208 |
208|Acta Geoscientia Sinica| |1006-3021|Bimonthly| |CHINA INT BOOK TRADING CORP |
|
209 |
209|Acta Geotechnica Slovenica|Engineering|1854-0171|Semiannual| |UNIV MARIBOR |
Also available in: Unified diff
[maven-release-plugin] copy for tag dnet-collector-plugins-1.5.9