diff options
author | Robin Rosenberg <robin.rosenberg@dewire.com> | 2013-06-16 12:02:14 +0200 |
---|---|---|
committer | Matthias Sohn <matthias.sohn@sap.com> | 2013-08-21 14:44:46 +0200 |
commit | 8a7f4864d8189ddb19fb3f03de686e19e51bd02c (patch) | |
tree | 45ce049edc2b4ea072bcce77ef90dfc560dae0f2 | |
parent | 423f7227cdd5f4ff9607daf063d15c2b290aa5b8 (diff) | |
download | jgit-8a7f4864d8189ddb19fb3f03de686e19e51bd02c.tar.gz jgit-8a7f4864d8189ddb19fb3f03de686e19e51bd02c.zip |
Fix tests for OS X when the tmpdir is the default /tmp
/tmp is a symbolic link and some tests break when the path
gets canonicalized by JGit or Jetty. Allow Jetty to serve
symlinks by setting init parameter "aliases" to true [1].
[1] http://wiki.eclipse.org/Jetty/Howto/How_to_serve_symbolically_linked_files
Change-Id: I45359a40435e8a33def6e0bb6784b4d8637793ac
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
4 files changed, 18 insertions, 5 deletions
diff --git a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DumbClientDumbServerTest.java b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DumbClientDumbServerTest.java index fbf4d075ad..1726dc5eb9 100644 --- a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DumbClientDumbServerTest.java +++ b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DumbClientDumbServerTest.java @@ -60,6 +60,7 @@ import java.util.Map; import org.eclipse.jetty.servlet.DefaultServlet; import org.eclipse.jetty.servlet.ServletContextHandler; +import org.eclipse.jetty.servlet.ServletHolder; import org.eclipse.jgit.errors.NotSupportedException; import org.eclipse.jgit.junit.TestRepository; import org.eclipse.jgit.junit.http.AccessEvent; @@ -97,8 +98,9 @@ public class DumbClientDumbServerTest extends HttpTestCase { ServletContextHandler app = server.addContext("/git"); app.setResourceBase(base.toString()); - app.addServlet(DefaultServlet.class, "/"); - + ServletHolder holder = app.addServlet(DefaultServlet.class, "/"); + // The tmp directory is symlinked on OS X + holder.setInitParameter("aliases", "true"); server.setUp(); remoteRepository = src.getRepository(); diff --git a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/GitServletInitTest.java b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/GitServletInitTest.java index 9dfb199425..6cbb41e98e 100644 --- a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/GitServletInitTest.java +++ b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/GitServletInitTest.java @@ -101,6 +101,8 @@ public class GitServletInitTest { ServletHolder s = app.addServlet(GitServlet.class, "/git"); s.setInitOrder(1); s.getServletHandler().setStartWithUnavailable(false); + // The tmp directory is symlinked on OS X + s.setInitParameter("aliases", "true"); try { server.setUp(); @@ -133,6 +135,8 @@ public class GitServletInitTest { s.setInitOrder(1); s.setInitParameter("base-path", "."); s.setInitParameter("export-all", "true"); + // The tmp directory is symlinked on OS X + s.setInitParameter("aliases", "true"); server.setUp(); assertTrue("no warnings", RecordingLogger.getWarnings().isEmpty()); diff --git a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java index 8bdaf2cb6a..b686d160b1 100644 --- a/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java +++ b/org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java @@ -123,7 +123,9 @@ public class HttpClientTests extends HttpTestCase { ServletContextHandler ctx = server.addContext(path); ctx.setResourceBase(base.toString()); - ctx.addServlet(DefaultServlet.class, "/"); + ServletHolder holder = ctx.addServlet(DefaultServlet.class, "/"); + // The tmp directory is symlinked on OS X + holder.setInitParameter("aliases", "true"); return ctx; } diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileRepositoryBuilderTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileRepositoryBuilderTest.java index 0655415a9d..efdcfeb472 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileRepositoryBuilderTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileRepositoryBuilderTest.java @@ -148,7 +148,10 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase { builder.setMustExist(true); Repository repo2 = builder.build(); - assertEquals(repo1.getDirectory(), repo2.getDirectory()); + // The tmp directory may be a symlink so the actual path + // may not + assertEquals(repo1.getDirectory().getCanonicalPath(), repo2 + .getDirectory().getCanonicalPath()); assertEquals(dir, repo2.getWorkTree()); } @@ -168,7 +171,9 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase { builder.setMustExist(true); Repository repo2 = builder.build(); - assertEquals(repo1.getDirectory(), repo2.getDirectory()); + // The tmp directory may be a symlink + assertEquals(repo1.getDirectory().getCanonicalPath(), repo2 + .getDirectory().getCanonicalPath()); assertEquals(dir, repo2.getWorkTree()); } } |