15
15
import org .linkeddatafragments .datasource .IDataSource ;
16
16
import org .linkeddatafragments .datasource .IFragmentRequestProcessor ;
17
17
import org .linkeddatafragments .fragments .LinkedDataFragment ;
18
+ import org .linkeddatafragments .fragments .tpf .TriplePatternElement ;
18
19
import org .linkeddatafragments .fragments .tpf .TriplePatternFragment ;
19
20
import org .linkeddatafragments .fragments .tpf .TriplePatternFragmentRequest ;
21
+ import org .linkeddatafragments .fragments .tpf .TriplePatternFragmentRequestImpl ;
22
+ import org .linkeddatafragments .util .TriplePatternElementParser ;
20
23
21
24
22
25
/**
23
26
*
24
27
* @author Bart Hanssens <[email protected] >
25
28
*/
26
- public abstract class DataSourceTest {
29
+ public abstract class DataSourceTest < TermType , VarType > {
27
30
private static IDataSource ds ;
28
31
29
32
/**
@@ -43,6 +46,9 @@ public static IDataSource getDatasource() {
43
46
public static void setDatasource (IDataSource ds ) {
44
47
DataSourceTest .ds = ds ;
45
48
}
49
+
50
+ protected abstract TriplePatternElementParser <TermType ,VarType >
51
+ getTriplePatternElementParser ();
46
52
47
53
/**
48
54
* Copy the demo triple in the jar to a temp file.
@@ -84,15 +90,18 @@ public static JsonObject createConfig(String title, String desc, String type) {
84
90
*/
85
91
@ Test
86
92
public void testEmpty () {
87
- TriplePatternFragmentRequest request = new TriplePatternFragmentRequest () {
88
- public boolean isPageRequest () { return true ; }
89
- public long getPageNumber () { return 1L ; }
90
- public String getFragmentURL () { return "http://example.org/f" ; }
91
- public String getDatasetURL () { return "http://example.org/" ; }
92
- public String getSubject () { return "http://nothing.ldf.org" ; }
93
- public String getPredicate () { return null ; }
94
- public String getObject () { return null ; }
95
- };
93
+ final TriplePatternElementParser <TermType ,VarType > tpeParser =
94
+ getTriplePatternElementParser ();
95
+
96
+ final TriplePatternFragmentRequest <TermType ,VarType > request =
97
+ new TriplePatternFragmentRequestImpl <TermType ,VarType >(
98
+ "http://example.org/f" , // fragmentURL
99
+ "http://example.org/" , // datasetURL,
100
+ true , // pageNumberWasRequested,
101
+ 1L , //pageNumber,
102
+ tpeParser .parseIntoTriplePatternElement ("http://nothing.ldf.org" ), // subject,
103
+ tpeParser .parseIntoTriplePatternElement (null ), // predicate,
104
+ tpeParser .parseIntoTriplePatternElement (null ) ); //object
96
105
97
106
final IFragmentRequestProcessor proc = getDatasource ().getRequestProcessor ();
98
107
final LinkedDataFragment ldf = proc .createRequestedFragment ( request );
@@ -109,14 +118,25 @@ public void testEmpty() {
109
118
*/
110
119
@ Test
111
120
public void testEstimate () {
112
- TriplePatternFragmentRequest request = new TriplePatternFragmentRequest () {
121
+ final TriplePatternElementParser <TermType ,VarType > tpeParser =
122
+ getTriplePatternElementParser ();
123
+
124
+ final TriplePatternFragmentRequest <TermType ,VarType > request =
125
+ new TriplePatternFragmentRequest <TermType ,VarType >() {
113
126
public boolean isPageRequest () { return true ; }
114
127
public long getPageNumber () { return 1L ; }
115
128
public String getFragmentURL () { return "http://example.org/f" ; }
116
129
public String getDatasetURL () { return "http://example.org/" ; }
117
- public String getSubject () { return "http://data.gov.be/catalog/ckanvl" ; }
118
- public String getPredicate () { return null ; }
119
- public String getObject () { return null ; }
130
+
131
+ public TriplePatternElement <TermType ,VarType > getSubject () {
132
+ return tpeParser .parseIntoTriplePatternElement ("http://data.gov.be/catalog/ckanvl" );
133
+ }
134
+ public TriplePatternElement <TermType ,VarType > getPredicate () {
135
+ return tpeParser .parseIntoTriplePatternElement (null );
136
+ }
137
+ public TriplePatternElement <TermType ,VarType > getObject () {
138
+ return tpeParser .parseIntoTriplePatternElement (null );
139
+ }
120
140
};
121
141
122
142
final IFragmentRequestProcessor proc = getDatasource ().getRequestProcessor ();
0 commit comments