Browse Source

In TestRepository, use a consistent clock

The default author and committer objects in TestRepository were
initialized statically and did not use the MockSystemReader passed into
the TestRepository ctor. Make these fields non-static and initialize
them with a consistent clock.

Also make the author and commiter name and email strings public for
tests that want to verify against them.

Change-Id: I88b444b96e22743001b32824d8e4e03c2239aa86
Signed-off-by: Terry Parker <tparker@google.com>
stable-4.4
Terry Parker 9 years ago
parent
commit
10135580d0
  1. 25
      org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java

25
org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java

@ -112,23 +112,18 @@ import org.eclipse.jgit.util.io.SafeBufferedOutputStream;
* type of Repository the test data is stored on. * type of Repository the test data is stored on.
*/ */
public class TestRepository<R extends Repository> { public class TestRepository<R extends Repository> {
private static final PersonIdent defaultAuthor;
private static final PersonIdent defaultCommitter; public static final String AUTHOR = "J. Author";
static { public static final String AUTHOR_EMAIL = "jauthor@example.com";
final MockSystemReader m = new MockSystemReader();
final long now = m.getCurrentTime();
final int tz = m.getTimezone(now);
final String an = "J. Author"; public static final String COMMITTER = "J. Committer";
final String ae = "jauthor@example.com";
defaultAuthor = new PersonIdent(an, ae, now, tz);
final String cn = "J. Committer"; public static final String COMMITTER_EMAIL = "jcommitter@example.com";
final String ce = "jcommitter@example.com";
defaultCommitter = new PersonIdent(cn, ce, now, tz); private final PersonIdent defaultAuthor;
}
private final PersonIdent defaultCommitter;
private final R db; private final R db;
@ -184,6 +179,10 @@ public class TestRepository<R extends Repository> {
this.pool = rw; this.pool = rw;
this.inserter = db.newObjectInserter(); this.inserter = db.newObjectInserter();
this.mockSystemReader = reader; this.mockSystemReader = reader;
long now = mockSystemReader.getCurrentTime();
int tz = mockSystemReader.getTimezone(now);
defaultAuthor = new PersonIdent(AUTHOR, AUTHOR_EMAIL, now, tz);
defaultCommitter = new PersonIdent(COMMITTER, COMMITTER_EMAIL, now, tz);
} }
/** @return the repository this helper class operates against. */ /** @return the repository this helper class operates against. */

Loading…
Cancel
Save