Correctly set up MockSystemReader in ServletTest MockSystemReader was not set up for BlameServletTest, it was using the non-mock version, which disagreed from the mock version set up by TestRepository. Set it up in the ServletTest base class and pass that one into TestRepository so they share a common clock. Change-Id: I1132d9f1d9112784fcda974596f2f81b6bb76f4d
diff --git a/gitiles-servlet/src/test/java/com/google/gitiles/ServletTest.java b/gitiles-servlet/src/test/java/com/google/gitiles/ServletTest.java index eebea25..01de750 100644 --- a/gitiles-servlet/src/test/java/com/google/gitiles/ServletTest.java +++ b/gitiles-servlet/src/test/java/com/google/gitiles/ServletTest.java
@@ -30,8 +30,12 @@ import org.eclipse.jgit.internal.storage.dfs.DfsRepository; import org.eclipse.jgit.internal.storage.dfs.DfsRepositoryDescription; import org.eclipse.jgit.internal.storage.dfs.InMemoryRepository; +import org.eclipse.jgit.junit.MockSystemReader; import org.eclipse.jgit.junit.TestRepository; import org.eclipse.jgit.lib.PersonIdent; +import org.eclipse.jgit.revwalk.RevWalk; +import org.eclipse.jgit.util.SystemReader; +import org.junit.After; import org.junit.Before; import java.util.Map; @@ -44,11 +48,18 @@ @Before public void setUp() throws Exception { - repo = new TestRepository<DfsRepository>( - new InMemoryRepository(new DfsRepositoryDescription("repo"))); + MockSystemReader mockSystemReader = new MockSystemReader(); + SystemReader.setInstance(mockSystemReader); + DfsRepository r = new InMemoryRepository(new DfsRepositoryDescription("repo")); + repo = new TestRepository<>(r, new RevWalk(r), mockSystemReader); servlet = TestGitilesServlet.create(repo); } + @After + public void tearDown() { + SystemReader.setInstance(null); + } + protected FakeHttpServletResponse buildResponse( String path, String queryString, int expectedStatus) throws Exception {
diff --git a/gitiles-servlet/src/test/java/com/google/gitiles/blame/BlameServletTest.java b/gitiles-servlet/src/test/java/com/google/gitiles/blame/BlameServletTest.java index e0f4360..f4fb859 100644 --- a/gitiles-servlet/src/test/java/com/google/gitiles/blame/BlameServletTest.java +++ b/gitiles-servlet/src/test/java/com/google/gitiles/blame/BlameServletTest.java
@@ -21,7 +21,6 @@ import com.google.gitiles.ServletTest; import com.google.gson.reflect.TypeToken; -import org.eclipse.jgit.lib.PersonIdent; import org.eclipse.jgit.revwalk.RevCommit; import org.junit.Test; import org.junit.runner.RunWith; @@ -32,8 +31,8 @@ @RunWith(JUnit4.class) public class BlameServletTest extends ServletTest { - private static final String NAME = "Y. Author"; - private static final String EMAIL = "[email protected]"; + private static final String NAME = "J. Author"; + private static final String EMAIL = "[email protected]"; private static class RegionJsonData { int start; int count; @@ -46,11 +45,10 @@ public void blameJson() throws Exception { String contents1 = "foo\n"; String contents2 = "foo\ncontents\n"; - PersonIdent author = new PersonIdent(NAME, EMAIL); - RevCommit c1 = repo.update("master", repo.commit().add("foo", contents1).author(author)); + RevCommit c1 = repo.update("master", repo.commit().add("foo", contents1)); String c1Time = currentTimeFormatted(); RevCommit c2 = repo.update("master", - repo.commit().tick(10).parent(c1).add("foo", contents2).author(author)); + repo.commit().tick(10).parent(c1).add("foo", contents2)); String c2Time = currentTimeFormatted(); Map<String, List<RegionJsonData>> result = getBlameJson("/repo/+blame/" + c2.name() + "/foo");