diff options
author | Thomas Wolf <thomas.wolf@paranor.ch> | 2017-08-31 15:48:10 +0200 |
---|---|---|
committer | Thomas Wolf <thomas.wolf@paranor.ch> | 2017-08-31 15:48:10 +0200 |
commit | c91c20f36f2df03b792cd610b8ec54045b014159 (patch) | |
tree | 0289d859183dae27144f600f9b0c50802fd4a838 /org.eclipse.jgit.test/tst/org/eclipse/jgit/indexdiff/IndexDiffWithSymlinkTest.java | |
parent | c506f8d2dd0f0974339a087251f35e7e8d878df2 (diff) | |
download | jgit-c91c20f36f2df03b792cd610b8ec54045b014159.tar.gz jgit-c91c20f36f2df03b792cd610b8ec54045b014159.zip |
Fix some tests for running in bazel
Some tests call out to external cgit. Those tests all failed for me
locally on Mac. Turned out that the reason was that the system git
config used by the git in the bazel run contained paths with ~/ but
somehow $HOME was not set. As a result the external git returned
with exit code 128.
Fix this by passing along $HOME explicitly. Also improve assertions
to make sure we do get the stderr of the external command in the
test log.
I hadn't noticed that until now because apparently the maven build
does pass along $HOME.
Change-Id: I7069676d5cc7b23a71e79a4866fe8acab5a405f4
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
Diffstat (limited to 'org.eclipse.jgit.test/tst/org/eclipse/jgit/indexdiff/IndexDiffWithSymlinkTest.java')
-rw-r--r-- | org.eclipse.jgit.test/tst/org/eclipse/jgit/indexdiff/IndexDiffWithSymlinkTest.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/indexdiff/IndexDiffWithSymlinkTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/indexdiff/IndexDiffWithSymlinkTest.java index 4f3b601d3c..4228c9dbec 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/indexdiff/IndexDiffWithSymlinkTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/indexdiff/IndexDiffWithSymlinkTest.java @@ -142,7 +142,11 @@ public class IndexDiffWithSymlinkTest extends LocalDiskRepositoryTestCase { String[] cmd = { "/bin/sh", "./" + name + ".sh" }; int exitCode; String stdErr; - Process process = Runtime.getRuntime().exec(cmd, null, testDir); + ProcessBuilder builder = new ProcessBuilder(cmd); + builder.environment().put("HOME", + FS.DETECTED.userHome().getAbsolutePath()); + builder.directory(testDir); + Process process = builder.start(); try (InputStream stdOutStream = process.getInputStream(); InputStream stdErrStream = process.getErrorStream(); OutputStream stdInStream = process.getOutputStream()) { |