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>
tags/v4.3.0.201604071810-r
Terry Parker 8 years ago
parent
commit
10135580d0
1 changed files with 12 additions and 13 deletions
  1. 12
    13
      org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java

+ 12
- 13
org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java View File

@@ -112,23 +112,18 @@ import org.eclipse.jgit.util.io.SafeBufferedOutputStream;
* type of Repository the test data is stored on.
*/
public class TestRepository<R extends Repository> {
private static final PersonIdent defaultAuthor;

private static final PersonIdent defaultCommitter;
public static final String AUTHOR = "J. Author";

static {
final MockSystemReader m = new MockSystemReader();
final long now = m.getCurrentTime();
final int tz = m.getTimezone(now);
public static final String AUTHOR_EMAIL = "jauthor@example.com";

final String an = "J. Author";
final String ae = "jauthor@example.com";
defaultAuthor = new PersonIdent(an, ae, now, tz);
public static final String COMMITTER = "J. Committer";

final String cn = "J. Committer";
final String ce = "jcommitter@example.com";
defaultCommitter = new PersonIdent(cn, ce, now, tz);
}
public static final String COMMITTER_EMAIL = "jcommitter@example.com";

private final PersonIdent defaultAuthor;

private final PersonIdent defaultCommitter;

private final R db;

@@ -184,6 +179,10 @@ public class TestRepository<R extends Repository> {
this.pool = rw;
this.inserter = db.newObjectInserter();
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. */

Loading…
Cancel
Save