mock reconciliation service (#2410)
This commit is contained in:
parent
83d175be1b
commit
14ef45efb2
@ -34,8 +34,16 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|||||||
package com.google.refine.importers;
|
package com.google.refine.importers;
|
||||||
|
|
||||||
|
|
||||||
|
import java.io.ByteArrayInputStream;
|
||||||
|
import java.io.OutputStream;
|
||||||
import java.io.StringReader;
|
import java.io.StringReader;
|
||||||
|
import java.net.HttpURLConnection;
|
||||||
|
import java.net.URL;
|
||||||
|
|
||||||
|
import com.google.refine.model.recon.StandardReconConfig;
|
||||||
|
import org.mockito.Mockito;
|
||||||
|
import org.powermock.api.mockito.PowerMockito;
|
||||||
|
import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.testng.Assert;
|
import org.testng.Assert;
|
||||||
import org.testng.annotations.AfterMethod;
|
import org.testng.annotations.AfterMethod;
|
||||||
@ -45,6 +53,7 @@ import org.testng.annotations.Test;
|
|||||||
|
|
||||||
import com.google.refine.importers.WikitextImporter;
|
import com.google.refine.importers.WikitextImporter;
|
||||||
|
|
||||||
|
@PrepareForTest(StandardReconConfig.class)
|
||||||
public class WikitextImporterTests extends ImporterTest {
|
public class WikitextImporterTests extends ImporterTest {
|
||||||
|
|
||||||
private WikitextImporter importer = null;
|
private WikitextImporter importer = null;
|
||||||
@ -123,7 +132,79 @@ public class WikitextImporterTests extends ImporterTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void readTableWithLinks() {
|
public void readTableWithLinks() throws Exception {
|
||||||
|
String result = "{\n" +
|
||||||
|
" \"q0\": {\n" +
|
||||||
|
" \"result\": [\n" +
|
||||||
|
" {\n" +
|
||||||
|
" \"all_labels\": {\n" +
|
||||||
|
" \"score\": 100,\n" +
|
||||||
|
" \"weighted\": 100\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"score\": 100,\n" +
|
||||||
|
" \"id\": \"Q116214\",\n" +
|
||||||
|
" \"name\": \"European Centre for the Development of Vocational Training\",\n" +
|
||||||
|
" \"type\": [\n" +
|
||||||
|
" {\n" +
|
||||||
|
" \"id\": \"Q392918\",\n" +
|
||||||
|
" \"name\": \"agency of the European Union\"\n" +
|
||||||
|
" }\n" +
|
||||||
|
" ],\n" +
|
||||||
|
" \"match\": true\n" +
|
||||||
|
" }\n" +
|
||||||
|
" ]\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"q1\": {\n" +
|
||||||
|
" \"result\": [\n" +
|
||||||
|
" {\n" +
|
||||||
|
" \"all_labels\": {\n" +
|
||||||
|
" \"score\": 100,\n" +
|
||||||
|
" \"weighted\": 100\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"score\": 100,\n" +
|
||||||
|
" \"id\": \"Q1377549\",\n" +
|
||||||
|
" \"name\": \"European Foundation for the Improvement of Living and Working Conditions\",\n" +
|
||||||
|
" \"type\": [\n" +
|
||||||
|
" {\n" +
|
||||||
|
" \"id\": \"Q392918\",\n" +
|
||||||
|
" \"name\": \"agency of the European Union\"\n" +
|
||||||
|
" }\n" +
|
||||||
|
" ],\n" +
|
||||||
|
" \"match\": true\n" +
|
||||||
|
" }\n" +
|
||||||
|
" ]\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"q2\": {\n" +
|
||||||
|
" \"result\": [\n" +
|
||||||
|
" {\n" +
|
||||||
|
" \"all_labels\": {\n" +
|
||||||
|
" \"score\": 100,\n" +
|
||||||
|
" \"weighted\": 100\n" +
|
||||||
|
" },\n" +
|
||||||
|
" \"score\": 100,\n" +
|
||||||
|
" \"id\": \"Q1377256\",\n" +
|
||||||
|
" \"name\": \"European Monitoring Centre for Drugs and Drug Addiction\",\n" +
|
||||||
|
" \"type\": [\n" +
|
||||||
|
" {\n" +
|
||||||
|
" \"id\": \"Q392918\",\n" +
|
||||||
|
" \"name\": \"agency of the European Union\"\n" +
|
||||||
|
" }\n" +
|
||||||
|
" ],\n" +
|
||||||
|
" \"match\": true\n" +
|
||||||
|
" }\n" +
|
||||||
|
" ]\n" +
|
||||||
|
" }\n" +
|
||||||
|
"}";
|
||||||
|
|
||||||
|
// This mock is used to avoid real network connection during test
|
||||||
|
URL url = PowerMockito.mock(URL.class);
|
||||||
|
HttpURLConnection connection = Mockito.mock(HttpURLConnection.class);
|
||||||
|
Mockito.when(url.openConnection()).thenReturn(connection);
|
||||||
|
OutputStream out = Mockito.mock(OutputStream.class);
|
||||||
|
Mockito.when(connection.getOutputStream()).thenReturn(out); // avoid NullPointerException
|
||||||
|
Mockito.when(connection.getInputStream()).thenReturn(new ByteArrayInputStream(result.getBytes()));
|
||||||
|
PowerMockito.whenNew(URL.class).withAnyArguments().thenReturn(url);
|
||||||
|
|
||||||
// Data credits: Wikipedia contributors, https://de.wikipedia.org/w/index.php?title=Agenturen_der_Europäischen_Union&action=edit
|
// Data credits: Wikipedia contributors, https://de.wikipedia.org/w/index.php?title=Agenturen_der_Europäischen_Union&action=edit
|
||||||
String input = "\n"
|
String input = "\n"
|
||||||
+"{|\n"
|
+"{|\n"
|
||||||
|
Loading…
Reference in New Issue
Block a user