blob: 2d10b6fa2b7dc91ffb9f629783ba842564afa7dc [file] [log] [blame]
Nils Diewald01b4ce32013-12-05 22:39:25 +00001import java.util.*;
2import java.io.*;
3
4import de.ids_mannheim.korap.KorapCollection;
5
6import static org.junit.Assert.*;
7import org.junit.Test;
8import org.junit.Ignore;
9import org.junit.runner.RunWith;
10import org.junit.runners.JUnit4;
11
12@RunWith(JUnit4.class)
13public class TestKorapCollectionJSON {
14
15 @Test
16 public void metaQuery1 () {
Nils Diewald23417e82014-02-12 18:33:24 +000017 String metaQuery = getString(getClass().getResource("/queries/metaquery.jsonld").getFile());
Nils Diewald01b4ce32013-12-05 22:39:25 +000018 KorapCollection kc = new KorapCollection(metaQuery);
Nils Diewaldb1c3b652013-12-28 22:47:00 +000019
20 assertEquals("filter with QueryWrapperFilter(+textClass:wissenschaft)", kc.getFilter(0).toString());
21 assertEquals("filter with QueryWrapperFilter(+pubPlace:Erfurt +author:Hesse)", kc.getFilter(1).toString());
22 assertEquals("extend with QueryWrapperFilter(+pubDate:[20110429 TO 20131231] +textClass:freizeit)", kc.getFilter(2).toString());
23 assertEquals(3, kc.getCount());
Nils Diewald01b4ce32013-12-05 22:39:25 +000024 };
25
26
27 @Test
28 public void metaQuery2 () {
Nils Diewald23417e82014-02-12 18:33:24 +000029 String metaQuery = getString(getClass().getResource("/queries/metaquery2.jsonld").getFile());
Nils Diewald01b4ce32013-12-05 22:39:25 +000030 KorapCollection kc = new KorapCollection(metaQuery);
31 assertEquals(1,kc.getCount());
32 assertEquals("filter with QueryWrapperFilter(+author:Hesse +pubDate:[0 TO 20131205])",kc.getFilter(0).toString());
33 };
34
Nils Diewaldb1c3b652013-12-28 22:47:00 +000035 @Test
36 public void metaQuery3 () {
Nils Diewald23417e82014-02-12 18:33:24 +000037 String metaQuery = getString(getClass().getResource("/queries/metaquery4.jsonld").getFile());
Nils Diewaldb1c3b652013-12-28 22:47:00 +000038 KorapCollection kc = new KorapCollection(metaQuery);
39 assertEquals(1,kc.getCount());
40 assertEquals("filter with QueryWrapperFilter(+pubDate:[20000101 TO 20131231])",kc.getFilter(0).toString());
41 };
42
Nils Diewald01b4ce32013-12-05 22:39:25 +000043
44 public static String getString (String path) {
45 StringBuilder contentBuilder = new StringBuilder();
46 try {
47 BufferedReader in = new BufferedReader(new FileReader(path));
48 String str;
49 while ((str = in.readLine()) != null) {
50 contentBuilder.append(str);
51 };
52 in.close();
Nils Diewaldd7cb0eb2014-02-12 23:06:10 +000053 }
54 catch (IOException e) {
Nils Diewald01b4ce32013-12-05 22:39:25 +000055 fail(e.getMessage());
56 }
57 return contentBuilder.toString();
58 };
59
Nils Diewaldb1c3b652013-12-28 22:47:00 +000060};