From bc9df9c63c748a6cf3aa2a3ff929484e4bdcc78d Mon Sep 17 00:00:00 2001 From: Jonathan Nieder Date: Wed, 4 May 2016 15:48:36 -0700 Subject: [PATCH] TestRepository: Add delete() method Change-Id: Ib4841397ceab44bd38cf2f154314ac36ded73ae0 --- .../eclipse/jgit/junit/TestRepository.java | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java b/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java index 1119e6382..d0045d698 100644 --- a/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java +++ b/org.eclipse.jgit.junit/src/org/eclipse/jgit/junit/TestRepository.java @@ -586,6 +586,31 @@ public T update(String ref, T obj) throws Exception { } } + /** + * Delete a reference. + * + * @param ref + * the name of the reference to delete. This is normalized + * in the same way as {@link #update(String, T)}. + * @throws Exception + * @since 4.4 + */ + public void delete(String ref) throws Exception { + ref = normalizeRef(ref); + RefUpdate u = db.updateRef(ref); + switch (u.delete()) { + case FAST_FORWARD: + case FORCED: + case NEW: + case NO_CHANGE: + updateServerInfo(); + return; + + default: + throw new IOException("Cannot delete " + ref + " " + u.getResult()); + } + } + private static String normalizeRef(String ref) { if (Constants.HEAD.equals(ref)) { // nothing @@ -959,6 +984,15 @@ public RevCommit update(CommitBuilder to) throws Exception { public RevCommit update(RevCommit to) throws Exception { return TestRepository.this.update(ref, to); } + + /** + * Delete this branch. + * @throws Exception + * @since 4.4 + */ + public void delete() throws Exception { + TestRepository.this.delete(ref); + } } /** Helper to generate a commit. */