}
@Test
public void testBackoutTipMerge() throws Exception {
Repository repo = getTestRepository();
CommitCommand commitCmd = CommitCommand.on(repo).message("m")
.user("user");
writeFile("a", "boo");
writeFile("b", "bar");
AddCommand.on(repo).execute();
commitCmd.execute();
writeFile("b", "booo");
Changeset backoutCs = commitCmd.execute();
BackoutCommand.on(repo).rev(backoutCs.getNode()).merge()
.message("BackoutMerge").user("user").execute();
Assert.assertEquals(backoutCs, repo.workingCopy().getParent1().getParent1());
Assert.assertEquals(null, repo.workingCopy().getParent2());
Assert.assertEquals(null, repo.workingCopy().getParent1().getParent2());
Assert.assertEquals("bar", readFile("b"));
Assert.assertEquals(3, LogCommand.on(repo).execute().size());
}