diff options
Diffstat (limited to 'git/test/test_git.py')
-rw-r--r-- | git/test/test_git.py | 23 |
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 - - |