]> source.dussan.org Git - jgit.git/commitdiff
Fix tests for OS X when the tmpdir is the default /tmp 45/13845/2
authorRobin Rosenberg <robin.rosenberg@dewire.com>
Sun, 16 Jun 2013 10:02:14 +0000 (12:02 +0200)
committerMatthias Sohn <matthias.sohn@sap.com>
Sun, 16 Jun 2013 21:32:37 +0000 (23:32 +0200)
/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>
org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/DumbClientDumbServerTest.java
org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/GitServletInitTest.java
org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/test/HttpClientTests.java
org.eclipse.jgit.test/tst/org/eclipse/jgit/internal/storage/file/FileRepositoryBuilderTest.java

index fbf4d075ada5bec5ce794c7970c65520fd918851..1726dc5eb90da24f08d608e4a491db8f334e709b 100644 (file)
@@ -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();
index 9dfb199425da11109c0ac1a6d6e32f35a3d0f41a..6cbb41e98ed5bb094b5c82ca6d2c6544746c7e7f 100644 (file)
@@ -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());
index 8bdaf2cb6ab7fba814b02af648ccf581b101f096..b686d160b188b2f81e3bfa378ea1447b0802628e 100644 (file)
@@ -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;
        }
 
index 0655415a9d9be0b9ab952cf43c7961e50aaff4b6..efdcfeb47201ec301f16d6a7f577b9bda705aac7 100644 (file)
@@ -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());
        }
 }