@ -72,7 +72,6 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase {
. findGitDir ( d ) . getGitDir ( ) ) ;
}
@SuppressWarnings ( "unused" )
@Test
public void emptyRepositoryFormatVersion ( ) throws Exception {
Repository r = createWorkRepository ( ) ;
@ -81,10 +80,11 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase {
ConfigConstants . CONFIG_KEY_REPO_FORMAT_VERSION , "" ) ;
config . save ( ) ;
new FileRepository ( r . getDirectory ( ) ) ;
try ( FileRepository repo = new FileRepository ( r . getDirectory ( ) ) ) {
// Unused
}
}
@SuppressWarnings ( "unused" )
@Test
public void invalidRepositoryFormatVersion ( ) throws Exception {
Repository r = createWorkRepository ( ) ;
@ -93,15 +93,13 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase {
ConfigConstants . CONFIG_KEY_REPO_FORMAT_VERSION , "notanumber" ) ;
config . save ( ) ;
try {
new FileRepository ( r . getDirectory ( ) ) ;
try ( FileRepository repo = new FileRepository ( r . getDirectory ( ) ) ) {
fail ( "IllegalArgumentException not thrown" ) ;
} catch ( IllegalArgumentException e ) {
assertNotNull ( e . getMessage ( ) ) ;
}
}
@SuppressWarnings ( "unused" )
@Test
public void unknownRepositoryFormatVersion ( ) throws Exception {
Repository r = createWorkRepository ( ) ;
@ -110,75 +108,75 @@ public class FileRepositoryBuilderTest extends LocalDiskRepositoryTestCase {
ConfigConstants . CONFIG_KEY_REPO_FORMAT_VERSION , 999999 ) ;
config . save ( ) ;
try {
new FileRepository ( r . getDirectory ( ) ) ;
try ( FileRepository repo = new FileRepository ( r . getDirectory ( ) ) ) {
fail ( "IOException not thrown" ) ;
} catch ( IOException e ) {
assertNotNull ( e . getMessage ( ) ) ;
}
}
@SuppressWarnings ( "resource" /* java 7 */ )
@Test
public void absoluteGitDirRef ( ) throws Exception {
Repository repo1 = createWorkRepository ( ) ;
File dir = createTempDirectory ( "dir" ) ;
File dotGit = new File ( dir , Constants . DOT_GIT ) ;
new FileWriter ( dotGit ) . append (
"gitdir: " + repo1 . getDirectory ( ) . getAbsolutePath ( ) ) . close ( ) ;
FileRepositoryBuilder builder = new FileRepositoryBuilder ( ) ;
try ( FileWriter writer = new FileWriter ( dotGit ) ) {
writer . append ( "gitdir: " + repo1 . getDirectory ( ) . getAbsolutePath ( ) ) . close ( ) ;
FileRepositoryBuilder builder = new FileRepositoryBuilder ( ) ;
builder . setWorkTree ( dir ) ;
builder . setMustExist ( true ) ;
Repository repo2 = builder . build ( ) ;
builder . setWorkTree ( dir ) ;
builder . setMustExist ( true ) ;
Repository repo2 = builder . build ( ) ;
assertEquals ( repo1 . getDirectory ( ) . getAbsolutePath ( ) , repo2
. getDirectory ( ) . getAbsolutePath ( ) ) ;
assertEquals ( dir , repo2 . getWorkTree ( ) ) ;
assertEquals ( repo1 . getDirectory ( ) . getAbsolutePath ( ) , repo2
. getDirectory ( ) . getAbsolutePath ( ) ) ;
assertEquals ( dir , repo2 . getWorkTree ( ) ) ;
}
}
@SuppressWarnings ( "resource" /* java 7 */ )
@Test
public void relativeGitDirRef ( ) throws Exception {
Repository repo1 = createWorkRepository ( ) ;
File dir = new File ( repo1 . getWorkTree ( ) , "dir" ) ;
assertTrue ( dir . mkdir ( ) ) ;
File dotGit = new File ( dir , Constants . DOT_GIT ) ;
new FileWriter ( dotGit ) . append ( "gitdir: ../" + Constants . DOT_GIT )
. close ( ) ;
FileRepositoryBuilder builder = new FileRepositoryBuilder ( ) ;
builder . setWorkTree ( dir ) ;
builder . setMustExist ( true ) ;
Repository repo2 = builder . build ( ) ;
// The tmp directory may be a symlink so the actual path
// may not
assertEquals ( repo1 . getDirectory ( ) . getCanonicalPath ( ) , repo2
. getDirectory ( ) . getCanonicalPath ( ) ) ;
assertEquals ( dir , repo2 . getWorkTree ( ) ) ;
try ( FileWriter writer = new FileWriter ( dotGit ) ) {
writer . append ( "gitdir: ../" + Constants . DOT_GIT ) . close ( ) ;
FileRepositoryBuilder builder = new FileRepositoryBuilder ( ) ;
builder . setWorkTree ( dir ) ;
builder . setMustExist ( true ) ;
Repository repo2 = builder . build ( ) ;
// The tmp directory may be a symlink so the actual path
// may not
assertEquals ( repo1 . getDirectory ( ) . getCanonicalPath ( ) , repo2
. getDirectory ( ) . getCanonicalPath ( ) ) ;
assertEquals ( dir , repo2 . getWorkTree ( ) ) ;
}
}
@SuppressWarnings ( "resource" /* java 7 */ )
@Test
public void scanWithGitDirRef ( ) throws Exception {
Repository repo1 = createWorkRepository ( ) ;
File dir = createTempDirectory ( "dir" ) ;
File dotGit = new File ( dir , Constants . DOT_GIT ) ;
new FileWriter ( dotGit ) . append (
"gitdir: " + repo1 . getDirectory ( ) . getAbsolutePath ( ) ) . close ( ) ;
FileRepositoryBuilder builder = new FileRepositoryBuilder ( ) ;
builder . setWorkTree ( dir ) ;
builder . findGitDir ( dir ) ;
assertEquals ( repo1 . getDirectory ( ) . getAbsolutePath ( ) , builder
. getGitDir ( ) . getAbsolutePath ( ) ) ;
builder . setMustExist ( true ) ;
Repository repo2 = builder . build ( ) ;
// The tmp directory may be a symlink
assertEquals ( repo1 . getDirectory ( ) . getCanonicalPath ( ) , repo2
. getDirectory ( ) . getCanonicalPath ( ) ) ;
assertEquals ( dir , repo2 . getWorkTree ( ) ) ;
try ( FileWriter writer = new FileWriter ( dotGit ) ) {
writer . append (
"gitdir: " + repo1 . getDirectory ( ) . getAbsolutePath ( ) ) . close ( ) ;
FileRepositoryBuilder builder = new FileRepositoryBuilder ( ) ;
builder . setWorkTree ( dir ) ;
builder . findGitDir ( dir ) ;
assertEquals ( repo1 . getDirectory ( ) . getAbsolutePath ( ) , builder
. getGitDir ( ) . getAbsolutePath ( ) ) ;
builder . setMustExist ( true ) ;
Repository repo2 = builder . build ( ) ;
// The tmp directory may be a symlink
assertEquals ( repo1 . getDirectory ( ) . getCanonicalPath ( ) , repo2
. getDirectory ( ) . getCanonicalPath ( ) ) ;
assertEquals ( dir , repo2 . getWorkTree ( ) ) ;
}
}
}