Provide a convenient read() in RepositoryTestCase

For reading a file by its repository-relative path, analogous to
writeTrashFile.

Change-Id: I112de0d57c2ee1bd425de6cbf561a57fea7147f0
diff --git a/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/JGitTestUtil.java b/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/JGitTestUtil.java
index b3376a5..4bf597a 100644
--- a/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/JGitTestUtil.java
+++ b/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/JGitTestUtil.java
@@ -56,6 +56,7 @@
 
 import org.eclipse.jgit.storage.file.FileRepository;
 import org.eclipse.jgit.util.FileUtils;
+import org.eclipse.jgit.util.IO;
 import org.eclipse.jgit.util.RawParseUtils;
 import org.junit.Assert;
 import org.junit.Test;
@@ -174,6 +175,27 @@ public static void write(final File f, final String body)
 		}
 	}
 
+	/**
+	 * Fully read a UTF-8 file and return as a string.
+	 *
+	 * @param file
+	 *            file to read the content of.
+	 * @return UTF-8 decoded content of the file, empty string if the file
+	 *         exists but has no content.
+	 * @throws IOException
+	 *             the file does not exist, or could not be read.
+	 */
+	public static String read(final File file) throws IOException {
+		final byte[] body = IO.readFully(file);
+		return new String(body, 0, body.length, "UTF-8");
+	}
+
+	public static String read(final FileRepository db, final String name)
+			throws IOException {
+		File file = new File(db.getWorkTree(), name);
+		return read(file);
+	}
+
 	public static void deleteTrashFile(final FileRepository db,
 			final String name) throws IOException {
 		File path = new File(db.getWorkTree(), name);
diff --git a/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/LocalDiskRepositoryTestCase.java b/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/LocalDiskRepositoryTestCase.java
index d8ae705..676698a 100644
--- a/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/LocalDiskRepositoryTestCase.java
+++ b/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/LocalDiskRepositoryTestCase.java
@@ -68,7 +68,6 @@
 import org.eclipse.jgit.storage.file.WindowCacheConfig;
 import org.eclipse.jgit.util.FS;
 import org.eclipse.jgit.util.FileUtils;
-import org.eclipse.jgit.util.IO;
 import org.eclipse.jgit.util.SystemReader;
 import org.junit.After;
 import org.junit.Before;
@@ -435,19 +434,8 @@ protected void write(final File f, final String body) throws IOException {
 		JGitTestUtil.write(f, body);
 	}
 
-	/**
-	 * Fully read a UTF-8 file and return as a string.
-	 *
-	 * @param f
-	 *            file to read the content of.
-	 * @return UTF-8 decoded content of the file, empty string if the file
-	 *         exists but has no content.
-	 * @throws IOException
-	 *             the file does not exist, or could not be read.
-	 */
 	protected String read(final File f) throws IOException {
-		final byte[] body = IO.readFully(f);
-		return new String(body, 0, body.length, "UTF-8");
+		return JGitTestUtil.read(f);
 	}
 
 	private static String[] toEnvArray(final Map<String, String> env) {
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RepositoryTestCase.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RepositoryTestCase.java
index 457fd1a..dd03427 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RepositoryTestCase.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/RepositoryTestCase.java
@@ -108,6 +108,10 @@ protected File writeTrashFile(final String subdir, final String name,
 		return JGitTestUtil.writeTrashFile(db, subdir, name, data);
 	}
 
+	protected String read(final String name) throws IOException {
+		return JGitTestUtil.read(db, name);
+	}
+
 	protected void deleteTrashFile(final String name) throws IOException {
 		JGitTestUtil.deleteTrashFile(db, name);
 	}