Browse Source

Create all test data in trash folder

This ensures that all test data is separated from project sources and
cleaned up after the test. Previously the cloned bare test repository
was created in org.eclipse.jgit.test/ and not deleted after the test
run.

Change-Id: I55110442e365fc8fe610f1c372f72a71ee6e1412
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
tags/v0.12.1
Matthias Sohn 13 years ago
parent
commit
ea0f2f9e39

+ 18
- 4
org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/LocalDiskRepositoryTestCase.java View File

@@ -293,17 +293,31 @@ public abstract class LocalDiskRepositoryTestCase {
* the repository could not be created in the temporary area
*/
private FileRepository createRepository(boolean bare) throws IOException {
String uniqueId = System.currentTimeMillis() + "_" + (testCount++);
String gitdirName = "test" + uniqueId + (bare ? "" : "/") + Constants.DOT_GIT;
File gitdir = new File(trash, gitdirName).getCanonicalFile();
File gitdir = createUniqueTestGitDir(bare);
FileRepository db = new FileRepository(gitdir);

assertFalse(gitdir.exists());
db.create();
toClose.add(db);
return db;
}

/**
* Creates a new unique directory for a test repository
*
* @param bare
* true for a bare repository; false for a repository with a
* working directory
* @return a unique directory for a test repository
* @throws IOException
*/
protected File createUniqueTestGitDir(boolean bare) throws IOException {
String uniqueId = System.currentTimeMillis() + "_" + (testCount++);
String gitdirName = "test" + uniqueId + (bare ? "" : "/")
+ Constants.DOT_GIT;
File gitdir = new File(trash, gitdirName).getCanonicalFile();
return gitdir;
}

/**
* Run a hook script in the repository, returning the exit status.
*

+ 2
- 1
org.eclipse.jgit.test/tst/org/eclipse/jgit/api/GitConstructionTest.java View File

@@ -68,7 +68,8 @@ public class GitConstructionTest extends RepositoryTestCase {
git.commit().setMessage("Initial commit").call();

bareRepo = Git.cloneRepository().setBare(true)
.setURI(db.getDirectory().toURI().toString()).call()
.setURI(db.getDirectory().toURI().toString())
.setDirectory(createUniqueTestGitDir(true)).call()
.getRepository();
}


Loading…
Cancel
Save