summaryrefslogtreecommitdiff
path: root/git/test/test_git.py
diff options
context:
space:
mode:
Diffstat (limited to 'git/test/test_git.py')
-rw-r--r--git/test/test_git.py23
1 files changed, 19 insertions, 4 deletions
diff --git a/git/test/test_git.py b/git/test/test_git.py
index 990f4cd0..18acd77e 100644
--- a/git/test/test_git.py
+++ b/git/test/test_git.py
@@ -181,11 +181,26 @@ class TestGit(TestBase):
assert new_env == {'VARKEY': 'VARVALUE'}
assert self.git.environment() == {}
- rw_repo = Repo.init(os.path.join(rw_dir, 'repo'))
+ class TestRepo(Repo):
+ class GitCommandWrapperType(Git):
+ def _sshkey_script_path(self):
+ path = os.path.join(rw_dir, 'failing-script.sh')
+ stream = open(path, 'wt')
+ stream.write("#!/usr/bin/env sh\n" +
+ "echo FOO\n")
+ stream.close()
+ os.chmod(path, 0o555)
+ return path
+ # end Git
+ # end Repo
+
+ rw_repo = TestRepo.init(os.path.join(rw_dir, 'repo'))
remote = rw_repo.create_remote('ssh-origin', "ssh://git@server/foo")
with rw_repo.git.sshkey('doesntexist.key'):
- remote.fetch()
+ try:
+ remote.fetch()
+ except GitCommandError as err:
+ assert 'FOO' in str(err)
+ # end
# end
-
-