Repository: maven-scm Updated Branches: refs/heads/master cd4153912 -> 7b7bc090c
Introduce CustomSystemReader for testing purpose Project: http://git-wip-us.apache.org/repos/asf/maven-scm/repo Commit: http://git-wip-us.apache.org/repos/asf/maven-scm/commit/7b7bc090 Tree: http://git-wip-us.apache.org/repos/asf/maven-scm/tree/7b7bc090 Diff: http://git-wip-us.apache.org/repos/asf/maven-scm/diff/7b7bc090 Branch: refs/heads/master Commit: 7b7bc090c3a81eaf48cedafd83648ca1f5b59037 Parents: cd41539 Author: rfscholte <[email protected]> Authored: Mon May 30 22:15:27 2016 +0200 Committer: rfscholte <[email protected]> Committed: Mon May 30 22:15:27 2016 +0200 ---------------------------------------------------------------------- ...GitCheckInCommandCommitterAuthorTckTest.java | 76 ++++++++++++++++++++ 1 file changed, 76 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/maven-scm/blob/7b7bc090/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/test/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommandCommitterAuthorTckTest.java ---------------------------------------------------------------------- diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/test/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommandCommitterAuthorTckTest.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/test/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommandCommitterAuthorTckTest.java index 10fdb85..8aeccce 100644 --- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/test/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommandCommitterAuthorTckTest.java +++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-jgit/src/test/java/org/apache/maven/scm/provider/git/jgit/command/checkin/JGitCheckInCommandCommitterAuthorTckTest.java @@ -35,12 +35,16 @@ import org.apache.maven.scm.repository.ScmRepository; import org.codehaus.plexus.util.IOUtil; import org.eclipse.jgit.api.Git; import org.eclipse.jgit.lib.AnyObjectId; +import org.eclipse.jgit.lib.Config; import org.eclipse.jgit.lib.Constants; import org.eclipse.jgit.lib.Repository; import org.eclipse.jgit.lib.StoredConfig; import org.eclipse.jgit.revwalk.RevCommit; import org.eclipse.jgit.revwalk.RevWalk; +import org.eclipse.jgit.storage.file.FileBasedConfig; +import org.eclipse.jgit.util.FS; import org.eclipse.jgit.util.FileUtils; +import org.eclipse.jgit.util.SystemReader; /** * @author Dominik Bartholdi (imod) @@ -48,6 +52,26 @@ import org.eclipse.jgit.util.FileUtils; public class JGitCheckInCommandCommitterAuthorTckTest extends GitCheckInCommandTckTest { + + @Override + protected void setUp() + throws Exception + { + super.setUp(); + + SystemReader.setInstance( new CustomSystemReader() ); + } + + @Override + protected void tearDown() + throws Exception + { + super.tearDown(); + + // back to default + SystemReader.setInstance( null ); + } + /** * {@inheritDoc} */ @@ -276,4 +300,56 @@ public class JGitCheckInCommandCommitterAuthorTckTest } } + /** + * SystemReader for testing to have full control some imported getters + * + * @author Robert Scholte + */ + class CustomSystemReader extends SystemReader { + + private final SystemReader reader = SystemReader.getInstance(); + + // Ensure environment properties from CI server don't get pulled in + public String getenv( String variable ) + { + return null; + } + + @Override + public String getHostname() + { + return reader.getHostname(); + } + + @Override + public String getProperty( String key ) + { + return reader.getProperty( key ); + } + + @Override + public FileBasedConfig openSystemConfig( Config parent, FS fs ) + { + return reader.openSystemConfig( parent, fs ); + } + + @Override + public FileBasedConfig openUserConfig( Config parent, FS fs ) + { + return reader.openUserConfig( parent, fs ); + } + + @Override + public long getCurrentTime() + { + return reader.getCurrentTime(); + } + + @Override + public int getTimezone( long when ) + { + return reader.getTimezone( when ); + } + } + }
