Repository: Wikidata/Wikidata-Toolkit
Pull request #877 (2024-05-20 01:50:19)

Bump JamesIves/github-pages-deploy-action from 4.6.0 to 4.6.1
Bumps [JamesIves/github-pages-deploy-action](https://github.com/jamesives/github-pages-deploy-action) from 4.6.0 to 4.6.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/jamesives/github-pages-deploy-action/releases">JamesIves/github-pages-deploy-action's releases</a>.</em></p>
<blockquote>
<h2>v4.6.1</h2>
<h2>What's Changed</h2>
<h3>Fixes</h3>
<ul>
<li>Resolved an issue where workflows were suddenly failing due to a worktree in use error. The action will now attempt to create a temp branch name if the existing branch name is already checked out by a prior to step to ensure it can occur. This issue was only occurring in a handful of workflows, and likely stemmed from a git version change on the official GitHub runners. The actual root cause is still somewhat unknown.</li>
</ul>
<h3>Dependencies</h3>
<ul>
<li>build(deps-dev): bump eslint-plugin-jest from 28.2.0 to 28.5.0 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1577">JamesIves/github-pages-deploy-action#1577</a></li>
<li>build(deps): bump <code>@​eslint/js</code> from 9.0.0 to 9.2.0 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1576">JamesIves/github-pages-deploy-action#1576</a></li>
<li>build(deps-dev): bump eslint from 9.0.0 to 9.2.0 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1575">JamesIves/github-pages-deploy-action#1575</a></li>
<li>build(deps): bump typescript-eslint from 7.7.0 to 7.8.0 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1569">JamesIves/github-pages-deploy-action#1569</a></li>
<li>build(deps-dev): bump <code>@​types/node</code> from 20.12.7 to 20.12.9 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1578">JamesIves/github-pages-deploy-action#1578</a></li>
<li>build(deps-dev): bump <code>@​types/node</code> from 20.12.9 to 20.12.10 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1579">JamesIves/github-pages-deploy-action#1579</a></li>
<li>build(deps-dev): bump rimraf from 5.0.5 to 5.0.7 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1583">JamesIves/github-pages-deploy-action#1583</a></li>
<li>build(deps): bump codecov/codecov-action from 4.3.0 to 4.4.0 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1588">JamesIves/github-pages-deploy-action#1588</a></li>
<li>build(deps): bump typescript-eslint from 7.8.0 to 7.9.0 by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1586">JamesIves/github-pages-deploy-action#1586</a></li>
<li>build(deps): bump the eslint group with 3 updates by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1592">JamesIves/github-pages-deploy-action#1592</a></li>
<li>build(deps-dev): bump the misc group with 2 updates by <a href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a href="https://redirect.github.com/JamesIves/github-pages-deploy-action/pull/1593">JamesIves/github-pages-deploy-action#1593</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/JamesIves/github-pages-deploy-action/compare/v4...v4.6.1">https://github.com/JamesIves/github-pages-deploy-action/compare/v4...v4.6.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/5c6e9e9f3672ce8fd37b9856193d2a537941e66c"><code>5c6e9e9</code></a> Deploy Production Code for Commit e9abb9ce6e35175032a1e82dd997ac600ad10c9b 🚀</li>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/e9abb9ce6e35175032a1e82dd997ac600ad10c9b"><code>e9abb9c</code></a> Merge branch 'dev' into releases/v4</li>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/079c29cbbe91fe1b06f83be57ad53e8a0d3c8c38"><code>079c29c</code></a> build(deps-dev): bump the misc group with 2 updates (<a href="https://redirect.github.com/jamesives/github-pages-deploy-action/issues/1593">#1593</a>)</li>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/e0e9b96aa6f01a03b77ee464c4f301e7487a62ab"><code>e0e9b96</code></a> build(deps): bump the eslint group with 3 updates (<a href="https://redirect.github.com/jamesives/github-pages-deploy-action/issues/1592">#1592</a>)</li>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/dfda8148a1c8cf43d97aa3421867d44c372d0cd3"><code>dfda814</code></a> Merge branch 'dev' of <a href="https://github.com/JamesIves/github-pages-deploy-action">https://github.com/JamesIves/github-pages-deploy-action</a>...</li>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/c2821857f23a224815824e852567e7a60e985d52"><code>c282185</code></a> chore: update dependabot groups</li>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/91fd6eeeda825848072ae08203639c55c255eec6"><code>91fd6ee</code></a> fix: :bug: Use commish to make branch unique (<a href="https://redirect.github.com/jamesives/github-pages-deploy-action/issues/1591">#1591</a>)</li>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/5bb052c41a7c97d60f4147c7fae34725b9e8abbe"><code>5bb052c</code></a> build(deps): bump typescript-eslint from 7.8.0 to 7.9.0 (<a href="https://redirect.github.com/jamesives/github-pages-deploy-action/issues/1586">#1586</a>)</li>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/ef33bcd4947b3e43b815809dedf0f4e19c4257fb"><code>ef33bcd</code></a> build(deps): bump codecov/codecov-action from 4.3.0 to 4.4.0 (<a href="https://redirect.github.com/jamesives/github-pages-deploy-action/issues/1588">#1588</a>)</li>
<li><a href="https://github.com/JamesIves/github-pages-deploy-action/commit/1a64cb8ec57c97ea1608e5fd6689d7efec6adaa2"><code>1a64cb8</code></a> build(deps-dev): bump rimraf from 5.0.5 to 5.0.7 (<a href="https://redirect.github.com/jamesives/github-pages-deploy-action/issues/1583">#1583</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/jamesives/github-pages-deploy-action/compare/v4.6.0...v4.6.1">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=JamesIves/github-pages-deploy-action&package-manager=github_actions&previous-version=4.6.0&new-version=4.6.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)


</details>


Patch:
diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index 3566ddff..a1fdad48 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -31,7 +31,7 @@ jobs:
       - name: Generate javadocs
         run: mvn compile javadoc:aggregate
       - name: Publish javadocs
-        uses: JamesIves/github-pages-deploy-action@v4.6.0
+        uses: JamesIves/github-pages-deploy-action@v4.6.1
         with:
           branch: gh-pages
           folder: target/site/apidocs
diff --git a/pom.xml b/pom.xml
index 725e0c0b..f786b64e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -114,7 +114,7 @@
 			<dependency>
 				<groupId>org.apache.commons</groupId>
 				<artifactId>commons-compress</artifactId>
-				<version>1.26.1</version>
+				<version>1.26.2</version>
 			</dependency>
 			<dependency>
 				<groupId>com.fasterxml.jackson.core</groupId>
@@ -171,12 +171,12 @@
 			<dependency>
 				<groupId>org.eclipse.rdf4j</groupId>
 				<artifactId>rdf4j-rio-turtle</artifactId>
-				<version>4.3.11</version>
+				<version>4.3.12</version>
 			</dependency>
 			<dependency>
 				<groupId>org.eclipse.rdf4j</groupId>
 				<artifactId>rdf4j-rio-ntriples</artifactId>
-				<version>4.3.11</version>
+				<version>4.3.12</version>
 			</dependency>
 		</dependencies>
 	</dependencyManagement>
@@ -325,7 +325,7 @@
 				<!-- Plugin for creating Javadocs; goal for preparing docs for upload to github: javadoc:aggregate -->
 				<groupId>org.apache.maven.plugins</groupId>
 				<artifactId>maven-javadoc-plugin</artifactId>
-				<version>3.6.3</version>
+				<version>3.7.0</version>
 				<configuration>
 					<bottom>
 						<![CDATA[Copyright &#169; {inceptionYear}&#x2013;{currentYear} {organizationName}. Generated from source code published under the Apache License 2.0. For more information, see the <a href="https://www.mediawiki.org/wiki/Wikidata_Toolkit">Wikidata Toolkit homepage</a>]]></bottom>
@@ -344,7 +344,7 @@
 				<!-- Staging plugin -->
 				<groupId>org.sonatype.plugins</groupId>
 				<artifactId>nexus-staging-maven-plugin</artifactId>
-				<version>1.6.13</version>
+				<version>1.7.0</version>
 				<extensions>true</extensions>
 				<configuration>
 					<serverId>ossrh</serverId>
diff --git a/wdtk-distribution/pom.xml b/wdtk-distribution/pom.xml
index c9ba6eb3..a4562d1d 100644
--- a/wdtk-distribution/pom.xml
+++ b/wdtk-distribution/pom.xml
@@ -44,7 +44,7 @@
 			      <plugin>
 			        <groupId>org.apache.maven.plugins</groupId>
 			        <artifactId>maven-shade-plugin</artifactId>
-			        <version>3.5.3</version>
+			        <version>3.6.0</version>
 			        <executions>
 			          <execution>
 			          	<id>wdtk-library</id>
diff --git a/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/JsonOnlineDumpFile.java b/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/JsonOnlineDumpFile.java
index d6f35149..f76480be 100644
--- a/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/JsonOnlineDumpFile.java
+++ b/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/JsonOnlineDumpFile.java
@@ -22,12 +22,16 @@ package org.wikidata.wdtk.dumpfiles.wmf;
 
 import java.io.IOException;
 import java.io.InputStream;
+import java.net.HttpURLConnection;
+import java.net.URL;
+
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.wikidata.wdtk.dumpfiles.DumpContentType;
 import org.wikidata.wdtk.util.DirectoryManager;
 import org.wikidata.wdtk.util.WebResourceFetcher;
+import org.wikidata.wdtk.util.WebResourceFetcherImpl;
 
 public class JsonOnlineDumpFile extends WmfDumpFile {
 
@@ -115,9 +119,22 @@ public class JsonOnlineDumpFile extends WmfDumpFile {
 
 	@Override
 	protected boolean fetchIsDone() {
-		// WMF provides no easy way to check this for these files;
-		// so just assume it is done
-		return true;
+		boolean result = false;
+		String fileName = WmfDumpFile.getDumpFileName(DumpContentType.JSON,
+				this.projectName, this.dateStamp);
+		String urlString = getBaseUrl() + fileName;
+		// make a head request to check if resource exists
+		try {
+			HttpURLConnection connection = (HttpURLConnection) WebResourceFetcherImpl.getUrlConnection(new URL(urlString));
+			connection.setRequestMethod("HEAD");
+			int responseCode = connection.getResponseCode();
+			if (responseCode == HttpURLConnection.HTTP_OK) {
+				result = true;
+			}
+		} catch (IOException e) { // file not found or not readable
+			result = false;
+		}
+		return result;
 	}
 
 	/**
@@ -127,7 +144,7 @@ public class JsonOnlineDumpFile extends WmfDumpFile {
 	 */
 	String getBaseUrl() {
 		return WmfDumpFile.getDumpFileWebDirectory(DumpContentType.JSON,
-				this.projectName);
+				this.projectName) + this.dateStamp + "/";
 	}
 
 }
diff --git a/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/WmfDumpFile.java b/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/WmfDumpFile.java
index 08c12450..604ed302 100644
--- a/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/WmfDumpFile.java
+++ b/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/WmfDumpFile.java
@@ -53,7 +53,7 @@ public abstract class WmfDumpFile implements MwDumpFile {
 		WmfDumpFile.WEB_DIRECTORY.put(DumpContentType.CURRENT, "");
 		WmfDumpFile.WEB_DIRECTORY.put(DumpContentType.FULL, "");
 		WmfDumpFile.WEB_DIRECTORY.put(DumpContentType.SITES, "");
-		WmfDumpFile.WEB_DIRECTORY.put(DumpContentType.JSON, "other/");
+		WmfDumpFile.WEB_DIRECTORY.put(DumpContentType.JSON, "");
 	}
 
 	/**
@@ -68,7 +68,7 @@ public abstract class WmfDumpFile implements MwDumpFile {
 		WmfDumpFile.POSTFIXES.put(DumpContentType.FULL,
 				"-pages-meta-history.xml.bz2");
 		WmfDumpFile.POSTFIXES.put(DumpContentType.SITES, "-sites.sql.gz");
-		WmfDumpFile.POSTFIXES.put(DumpContentType.JSON, ".json.gz");
+		WmfDumpFile.POSTFIXES.put(DumpContentType.JSON, "-all.json.gz");
 	}
 
 	/**
@@ -172,7 +172,7 @@ public abstract class WmfDumpFile implements MwDumpFile {
 			if ("wikidatawiki".equals(projectName)) {
 				return WmfDumpFile.DUMP_SITE_BASE_URL
 						+ WmfDumpFile.WEB_DIRECTORY.get(dumpContentType)
-						+ "wikidata" + "/";
+						+ projectName + "/entities/";
 			} else {
 				throw new RuntimeException(
 						"Wikimedia Foundation uses non-systematic directory names for this type of dump file."
@@ -253,7 +253,7 @@ public abstract class WmfDumpFile implements MwDumpFile {
 	public static String getDumpFileName(DumpContentType dumpContentType,
 			String projectName, String dateStamp) {
 		if (dumpContentType == DumpContentType.JSON) {
-			return dateStamp + WmfDumpFile.getDumpFilePostfix(dumpContentType);
+			return "wikidata-" + dateStamp + WmfDumpFile.getDumpFilePostfix(dumpContentType);
 		} else {
 			return projectName + "-" + dateStamp
 					+ WmfDumpFile.getDumpFilePostfix(dumpContentType);
diff --git a/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/WmfOnlineDailyDumpFile.java b/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/WmfOnlineDailyDumpFile.java
index 5065a8ba..8f8eb7d4 100644
--- a/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/WmfOnlineDailyDumpFile.java
+++ b/wdtk-dumpfiles/src/main/java/org/wikidata/wdtk/dumpfiles/wmf/WmfOnlineDailyDumpFile.java
@@ -137,7 +137,7 @@ class WmfOnlineDailyDumpFile extends WmfDumpFile {
 					new InputStreamReader(in, StandardCharsets.UTF_8));
 			String inputLine = bufferedReader.readLine();
 			bufferedReader.close();
-			result = "done".equals(inputLine);
+			result = inputLine.startsWith("done");
 		} catch (IOException e) { // file not found or not readable
 			result = false;
 		}


Test patch:
diff --git a/wdtk-dumpfiles/src/test/java/org/wikidata/wdtk/dumpfiles/JsonDumpFileProcessingTest.java b/wdtk-dumpfiles/src/test/java/org/wikidata/wdtk/dumpfiles/JsonDumpFileProcessingTest.java
index f9721aa7..8d9eabde 100644
--- a/wdtk-dumpfiles/src/test/java/org/wikidata/wdtk/dumpfiles/JsonDumpFileProcessingTest.java
+++ b/wdtk-dumpfiles/src/test/java/org/wikidata/wdtk/dumpfiles/JsonDumpFileProcessingTest.java
@@ -169,7 +169,7 @@ public class JsonDumpFileProcessingTest {
 		Path dumpFilePath = dmPath.resolve("dumpfiles").resolve("wikidatawiki");
 		Path thisDumpPath = dumpFilePath.resolve(dumpContentType.toString()
 				.toLowerCase() + "-" + dateStamp);
-		Path filePath = thisDumpPath.resolve(dateStamp + WmfDumpFile.getDumpFilePostfix(dumpContentType));
+		Path filePath = thisDumpPath.resolve("wikidata-" + dateStamp + WmfDumpFile.getDumpFilePostfix(dumpContentType));
 		dm.setFileContents(filePath, MockStringContentFactory.getStringFromUrl(resourceUrl),
 				WmfDumpFile.getDumpFileCompressionType(filePath.toString()));
 	}
diff --git a/wdtk-dumpfiles/src/test/java/org/wikidata/wdtk/dumpfiles/wmf/WmfDumpFileManagerTest.java b/wdtk-dumpfiles/src/test/java/org/wikidata/wdtk/dumpfiles/wmf/WmfDumpFileManagerTest.java
index b3b41c0c..717f76dd 100644
--- a/wdtk-dumpfiles/src/test/java/org/wikidata/wdtk/dumpfiles/wmf/WmfDumpFileManagerTest.java
+++ b/wdtk-dumpfiles/src/test/java/org/wikidata/wdtk/dumpfiles/wmf/WmfDumpFileManagerTest.java
@@ -38,6 +38,7 @@ import org.wikidata.wdtk.dumpfiles.MwDumpFileProcessor;
 import org.wikidata.wdtk.testing.MockDirectoryManager;
 import org.wikidata.wdtk.testing.MockStringContentFactory;
 import org.wikidata.wdtk.testing.MockWebResourceFetcher;
+import org.wikidata.wdtk.util.WebResourceFetcherImpl;
 
 public class WmfDumpFileManagerTest {
 
@@ -61,7 +62,8 @@ public class WmfDumpFileManagerTest {
 			try {
 				result = result
 						+ MockStringContentFactory
-								.getStringFromInputStream(inputStream) + "\n";
+								.getStringFromInputStream(inputStream)
+						+ "\n";
 			} catch (IOException e) {
 				throw new RuntimeException(e);
 			}
@@ -146,9 +148,7 @@ public class WmfDumpFileManagerTest {
 
 	@Test
 	public void getAllJsonDumps() throws IOException {
-		wrf.setWebResourceContentsFromResource(
-				"https://dumps.wikimedia.org/other/wikidata/",
-				"/other-wikidata-index.html", this.getClass());
+		WebResourceFetcherImpl onlineWrf = new WebResourceFetcherImpl();
 
 		setLocalDump("20141110", DumpContentType.JSON, true);
 		setLocalDump("20150105", DumpContentType.CURRENT, true);
@@ -156,23 +156,24 @@ public class WmfDumpFileManagerTest {
 		setLocalDump("nodate", DumpContentType.JSON, true);
 
 		WmfDumpFileManager dumpFileManager = new WmfDumpFileManager(
-				"wikidatawiki", dm, wrf);
+				"wikidatawiki", dm, onlineWrf);
 
 		List<? extends MwDumpFile> dumpFiles = dumpFileManager
 				.findAllDumps(DumpContentType.JSON);
 
-		String[] dumpDates = { "20150112", "20150105", "20141229", "20141222",
-				"20141215", "20141210", "20141201", "20141124", "20141117",
-				"20141110" };
-		boolean[] dumpIsLocal = { false, false, false, false, false, false,
-				true, false, false, true };
+		String[] localDumpDates = { "20141201", "20141110" };
 
-		assertEquals(dumpFiles.size(), dumpDates.length);
+		assertTrue(localDumpDates.length < dumpFiles.size());
 		for (int i = 0; i < dumpFiles.size(); i++) {
 			assertEquals(dumpFiles.get(i).getDumpContentType(),
 					DumpContentType.JSON);
-			assertEquals(dumpFiles.get(i).getDateStamp(), dumpDates[i]);
-			if (dumpIsLocal[i]) {
+			boolean shouldBeLocal = false;
+			for (String localDumpDate : localDumpDates) {
+				if (localDumpDate.equals(dumpFiles.get(i).getDateStamp())) {
+					shouldBeLocal = true;
+				}
+			}
+			if (shouldBeLocal) {
 				assertTrue(
 						"Dumpfile " + dumpFiles.get(i) + " should be local.",
 						dumpFiles.get(i) instanceof WmfLocalDumpFile);
@@ -184,6 +185,21 @@ public class WmfDumpFileManagerTest {
 		}
 	}
 
+	@Test
+	public void findMostRecentJsonDump() throws IOException {
+		WebResourceFetcherImpl onlineWrf = new WebResourceFetcherImpl();
+		WmfDumpFileManager dumpFileManager = new WmfDumpFileManager(
+				"wikidatawiki", dm, onlineWrf);
+
+		MwDumpFile dumpFile = dumpFileManager
+				.findMostRecentDump(DumpContentType.JSON);
+
+		assertTrue(dumpFile != null);
+		assertTrue("Dumpfile " + dumpFile
+						+ " should be online.",
+						dumpFile instanceof JsonOnlineDumpFile);
+	}
+
 	@Test
 	public void getAllCurrentDumps() throws IOException {
 		wrf.setWebResourceContentsFromResource(