diff options
Diffstat (limited to 'org.eclipse.jgit.pgm.test/tst/org/eclipse')
-rw-r--r-- | org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CheckoutTest.java | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CheckoutTest.java b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CheckoutTest.java index e690ad6964..3651542fc6 100644 --- a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CheckoutTest.java +++ b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/CheckoutTest.java @@ -47,6 +47,7 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; import java.io.File; import java.nio.file.Files; @@ -236,8 +237,8 @@ public class CheckoutTest extends CLIRepositoryTestCase { * <li>Checkout branch '1' * </ol> * <p> - * The working tree should contain 'a' with FileMode.REGULAR_FILE after the - * checkout. + * The checkout has to delete folder but the workingtree contains a dirty + * file at this path. The checkout should fail like in native git. * * @throws Exception */ @@ -266,11 +267,15 @@ public class CheckoutTest extends CLIRepositoryTestCase { db.getFS()); assertEquals(FileMode.REGULAR_FILE, entry.getMode()); - git.checkout().setName(branch_1.getName()).call(); - - entry = new FileTreeIterator.FileEntry(new File(db.getWorkTree(), "a"), - db.getFS()); - assertEquals(FileMode.REGULAR_FILE, entry.getMode()); + try { + git.checkout().setName(branch_1.getName()).call(); + fail("Don't get the expected conflict"); + } catch (CheckoutConflictException e) { + assertEquals("[a]", e.getConflictingPaths().toString()); + entry = new FileTreeIterator.FileEntry( + new File(db.getWorkTree(), "a"), db.getFS()); + assertEquals(FileMode.REGULAR_FILE, entry.getMode()); + } } } |