summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Thiel <byronimo@gmail.com>2015-01-30 06:34:48 +0100
committerSebastian Thiel <byronimo@gmail.com>2015-01-30 06:35:39 +0100
commit47d9f1321c3a6da68a7909fcb1a66a209066d4c9 (patch)
treec9bbd6ab929d2ca253e4fcaa68a050669ffcb5bf
parentf498de9bfd67bcbb42d36dfb8ff9e59ec788825b (diff)
downloadgitpython-47d9f1321c3a6da68a7909fcb1a66a209066d4c9.tar.gz
Added test to verify we can handle fetch prunes.
They are just skipped. Fixes #249
-rw-r--r--git/test/test_remote.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/git/test/test_remote.py b/git/test/test_remote.py
index 98d74d8b..b7bf9801 100644
--- a/git/test/test_remote.py
+++ b/git/test/test_remote.py
@@ -445,6 +445,19 @@ class TestRemote(TestBase):
origin = rw_repo.remote('origin')
assert origin == rw_repo.remotes.origin
+ # Verify we can handle prunes when fetching
+ # stderr lines look like this: x [deleted] (none) -> origin/experiment-2012
+ # These should just be skipped
+ num_deleted = False
+ for branch in remote_repo.heads:
+ if branch.name != 'master':
+ branch.delete(remote_repo, branch, force=True)
+ num_deleted += 1
+ # end
+ # end for each branch
+ assert num_deleted > 0
+ assert len(rw_repo.remotes.origin.fetch(prune=True)) == 1, "deleted everything but master"
+
@with_rw_repo('HEAD', bare=True)
def test_creation_and_removal(self, bare_rw_repo):
new_name = "test_new_one"