Merge "JGit pgm tests must quote paths on the command line"
This commit is contained in:
commit
e5e56e8e25
|
@ -211,6 +211,14 @@ protected String escapeJava(String line) {
|
|||
.replaceAll("\t", "\\\\t");
|
||||
}
|
||||
|
||||
protected String shellQuote(String s) {
|
||||
return "'" + s.replace("'", "'\\''") + "'";
|
||||
}
|
||||
|
||||
protected String shellQuote(File f) {
|
||||
return "'" + f.getPath().replace("'", "'\\''") + "'";
|
||||
}
|
||||
|
||||
protected void assertStringArrayEquals(String expected, String[] actual) {
|
||||
// if there is more than one line, ignore last one if empty
|
||||
assertEquals(1,
|
||||
|
|
|
@ -139,10 +139,6 @@ public void testDefaultFormatIsTar() throws Exception {
|
|||
listTarEntries(result));
|
||||
}
|
||||
|
||||
private static String shellQuote(String s) {
|
||||
return "'" + s.replace("'", "'\\''") + "'";
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFormatOverridesFilename() throws Exception {
|
||||
File archive = new File(db.getWorkTree(), "format-overrides-name.tar");
|
||||
|
|
|
@ -78,9 +78,9 @@ public void testClone() throws Exception {
|
|||
File gitDir = db.getDirectory();
|
||||
String sourceURI = gitDir.toURI().toString();
|
||||
File target = createTempDirectory("target");
|
||||
StringBuilder cmd = new StringBuilder("git clone ").append(sourceURI
|
||||
+ " " + target.getPath());
|
||||
String[] result = execute(cmd.toString());
|
||||
String cmd = "git clone " + sourceURI + " "
|
||||
+ shellQuote(target.getPath());
|
||||
String[] result = execute(cmd);
|
||||
assertArrayEquals(new String[] {
|
||||
"Cloning into '" + target.getPath() + "'...",
|
||||
"", "" }, result);
|
||||
|
@ -101,9 +101,9 @@ public void testCloneEmpty() throws Exception {
|
|||
File gitDir = db.getDirectory();
|
||||
String sourceURI = gitDir.toURI().toString();
|
||||
File target = createTempDirectory("target");
|
||||
StringBuilder cmd = new StringBuilder("git clone ").append(sourceURI
|
||||
+ " " + target.getPath());
|
||||
String[] result = execute(cmd.toString());
|
||||
String cmd = "git clone " + sourceURI + " "
|
||||
+ shellQuote(target.getPath());
|
||||
String[] result = execute(cmd);
|
||||
assertArrayEquals(new String[] {
|
||||
"Cloning into '" + target.getPath() + "'...",
|
||||
"warning: You appear to have cloned an empty repository.", "",
|
||||
|
@ -125,8 +125,8 @@ public void testCloneIntoCurrentDir() throws Exception {
|
|||
File gitDir = db.getDirectory();
|
||||
String sourceURI = gitDir.toURI().toString();
|
||||
String name = new URIish(sourceURI).getHumanishName();
|
||||
StringBuilder cmd = new StringBuilder("git clone ").append(sourceURI);
|
||||
String[] result = execute(cmd.toString());
|
||||
String cmd = "git clone " + sourceURI;
|
||||
String[] result = execute(cmd);
|
||||
assertArrayEquals(new String[] {
|
||||
"Cloning into '" + new File(target, name).getName() + "'...",
|
||||
"", "" }, result);
|
||||
|
@ -143,10 +143,10 @@ public void testCloneBare() throws Exception {
|
|||
String sourcePath = gitDir.getAbsolutePath();
|
||||
String targetPath = (new File(sourcePath)).getParentFile()
|
||||
.getParentFile().getAbsolutePath()
|
||||
+ "/target.git";
|
||||
StringBuilder cmd = new StringBuilder("git clone --bare ")
|
||||
.append(sourcePath + " " + targetPath);
|
||||
String[] result = execute(cmd.toString());
|
||||
+ File.separator + "target.git";
|
||||
String cmd = "git clone --bare " + shellQuote(sourcePath) + " "
|
||||
+ shellQuote(targetPath);
|
||||
String[] result = execute(cmd);
|
||||
assertArrayEquals(new String[] {
|
||||
"Cloning into '" + targetPath + "'...", "", "" }, result);
|
||||
Git git2 = Git.open(new File(targetPath));
|
||||
|
|
|
@ -80,7 +80,7 @@ public void setUp() throws Exception {
|
|||
@Test
|
||||
public void testLsRemote() throws Exception {
|
||||
final List<String> result = CLIGitCommand.execute(
|
||||
"git ls-remote " + db.getDirectory(), db);
|
||||
"git ls-remote " + shellQuote(db.getDirectory()), db);
|
||||
assertArrayEquals(new String[] {
|
||||
"d0b1ef2b3dea02bb2ca824445c04e6def012c32c HEAD",
|
||||
"d0b1ef2b3dea02bb2ca824445c04e6def012c32c refs/heads/master",
|
||||
|
@ -98,7 +98,8 @@ public void testLsRemote() throws Exception {
|
|||
public void testLsRemoteHeads() throws Exception {
|
||||
final List<String> result = CLIGitCommand.execute(
|
||||
"git ls-remote --heads "
|
||||
+ db.getDirectory(), db);
|
||||
+ shellQuote(db.getDirectory()),
|
||||
db);
|
||||
assertArrayEquals(new String[] {
|
||||
"d0b1ef2b3dea02bb2ca824445c04e6def012c32c refs/heads/master",
|
||||
"d0b1ef2b3dea02bb2ca824445c04e6def012c32c refs/heads/test",
|
||||
|
@ -108,7 +109,7 @@ public void testLsRemoteHeads() throws Exception {
|
|||
@Test
|
||||
public void testLsRemoteTags() throws Exception {
|
||||
final List<String> result = CLIGitCommand.execute(
|
||||
"git ls-remote --tags " + db.getDirectory(), db);
|
||||
"git ls-remote --tags " + shellQuote(db.getDirectory()), db);
|
||||
assertArrayEquals(new String[] {
|
||||
"efc02078d83a5226986ae917323acec7e1e8b7cb refs/tags/tag1",
|
||||
"d0b1ef2b3dea02bb2ca824445c04e6def012c32c refs/tags/tag1^{}",
|
||||
|
@ -122,7 +123,8 @@ public void testLsRemoteTags() throws Exception {
|
|||
@Test
|
||||
public void testLsRemoteHeadsTags() throws Exception {
|
||||
final List<String> result = CLIGitCommand.execute(
|
||||
"git ls-remote --heads --tags " + db.getDirectory(), db);
|
||||
"git ls-remote --heads --tags " + shellQuote(db.getDirectory()),
|
||||
db);
|
||||
assertArrayEquals(new String[] {
|
||||
"d0b1ef2b3dea02bb2ca824445c04e6def012c32c refs/heads/master",
|
||||
"d0b1ef2b3dea02bb2ca824445c04e6def012c32c refs/heads/test",
|
||||
|
|
Loading…
Reference in New Issue