|
12 | 12 |
|
13 | 13 | import static org.assertj.core.api.Assertions.assertThat; |
14 | 14 | import static org.eclipse.rdf4j.model.util.Values.iri; |
| 15 | +import static org.junit.jupiter.api.Assertions.assertEquals; |
| 16 | +import static org.junit.jupiter.api.Assertions.assertNotNull; |
15 | 17 | import static org.mockito.ArgumentMatchers.any; |
16 | 18 | import static org.mockito.ArgumentMatchers.anyBoolean; |
17 | 19 | import static org.mockito.ArgumentMatchers.anyInt; |
| 20 | +import static org.mockito.Mockito.atLeastOnce; |
18 | 21 | import static org.mockito.Mockito.mock; |
19 | 22 | import static org.mockito.Mockito.never; |
20 | 23 | import static org.mockito.Mockito.times; |
21 | 24 | import static org.mockito.Mockito.verify; |
| 25 | +import static org.mockito.Mockito.when; |
| 26 | + |
| 27 | +import java.lang.ref.WeakReference; |
22 | 28 |
|
23 | 29 | import org.eclipse.rdf4j.http.client.SPARQLProtocolSession; |
24 | 30 | import org.eclipse.rdf4j.model.IRI; |
|
27 | 33 | import org.eclipse.rdf4j.model.vocabulary.FOAF; |
28 | 34 | import org.eclipse.rdf4j.model.vocabulary.RDF; |
29 | 35 | import org.eclipse.rdf4j.model.vocabulary.RDFS; |
| 36 | +import org.eclipse.rdf4j.query.impl.MapBindingSet; |
| 37 | +import org.eclipse.rdf4j.query.impl.SimpleBinding; |
| 38 | +import org.eclipse.rdf4j.query.impl.TupleQueryResultBuilder; |
| 39 | +import org.eclipse.rdf4j.query.parser.ParsedQuery; |
| 40 | +import org.eclipse.rdf4j.query.parser.sparql.SPARQLParser; |
| 41 | +import org.eclipse.rdf4j.query.parser.sparql.SPARQLParserFactory; |
30 | 42 | import org.eclipse.rdf4j.rio.ParserConfig; |
31 | 43 | import org.junit.jupiter.api.BeforeEach; |
32 | 44 | import org.junit.jupiter.api.Test; |
33 | 45 | import org.mockito.ArgumentCaptor; |
| 46 | +import org.mockito.Mock; |
| 47 | +import org.mockito.invocation.InvocationOnMock; |
34 | 48 |
|
35 | 49 | public class SPARQLConnectionTest { |
36 | 50 |
|
@@ -100,6 +114,26 @@ public void testAddSingleContextHandling() throws Exception { |
100 | 114 | assertThat(sparqlUpdate).containsPattern(expectedAddPattern).containsPattern(expectedRemovePattern); |
101 | 115 | } |
102 | 116 |
|
| 117 | + @Test |
| 118 | + public void testSizeQuery() throws Exception { |
| 119 | + |
| 120 | + String sizeAsTupleQuery = subject.sizeAsTupleQuery(); |
| 121 | + ParsedQuery query = new SPARQLParserFactory().getParser().parseQuery(sizeAsTupleQuery, "http://example.org/"); |
| 122 | + assertNotNull(query); |
| 123 | + |
| 124 | + sizeAsTupleQuery = subject.sizeAsTupleQuery(vf.createIRI("urn:g1")); |
| 125 | + query = new SPARQLParserFactory().getParser().parseQuery(sizeAsTupleQuery, "http://example.org/"); |
| 126 | + assertNotNull(query); |
| 127 | + |
| 128 | + sizeAsTupleQuery = subject.sizeAsTupleQuery(vf.createIRI("urn:g1"), vf.createIRI("urn:g2")); |
| 129 | + query = new SPARQLParserFactory().getParser().parseQuery(sizeAsTupleQuery, "http://example.org/"); |
| 130 | + assertNotNull(query); |
| 131 | + |
| 132 | + sizeAsTupleQuery = subject.sizeAsTupleQuery(vf.createIRI("urn:g1"), vf.createBNode()); |
| 133 | + query = new SPARQLParserFactory().getParser().parseQuery(sizeAsTupleQuery, "http://example.org/"); |
| 134 | + assertNotNull(query); |
| 135 | + } |
| 136 | + |
103 | 137 | @Test |
104 | 138 | public void testAddMultipleContextHandling() throws Exception { |
105 | 139 | ArgumentCaptor<String> sparqlUpdateCaptor = ArgumentCaptor.forClass(String.class); |
|
0 commit comments