From 555d03317bbfca3e525fe4c973911869823b8b85 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Mar 30 2017 09:36:11 +0000 Subject: [PATCH 1/3] Retrieve the gitolite folder from the configuration file Instead of relying on a variable that was never defined. --- diff --git a/pagure/lib/git.py b/pagure/lib/git.py index 8a9b118..bbb22d8 100644 --- a/pagure/lib/git.py +++ b/pagure/lib/git.py @@ -175,7 +175,7 @@ def generate_gitolite_acls(): shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, - cwd=gitolite_folder + cwd=pagure.APP.config['GITOLITE_HOME'] ) From 65598305620483752ae6392a35de4ca14f4e2916 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Mar 30 2017 09:36:11 +0000 Subject: [PATCH 2/3] When walking the main repo, use the proper object --- diff --git a/pagure/lib/git.py b/pagure/lib/git.py index bbb22d8..eb404ac 100644 --- a/pagure/lib/git.py +++ b/pagure/lib/git.py @@ -1367,7 +1367,7 @@ def diff_pull_request( if not repo_obj.is_empty and not orig_repo.is_empty: - main_walker = repo_obj.walk( + main_walker = orig_repo.walk( orig_repo.lookup_branch(request.branch).get_object().hex, pygit2.GIT_SORT_TIME) branch_walker = repo_obj.walk(commitid, pygit2.GIT_SORT_TIME) From be6a9134764e94c21fe1e116b0f82f30e86ef906 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Mar 30 2017 10:05:22 +0000 Subject: [PATCH 3/3] Add unit-tests for pagure.lib.git.generate_gitolite_acls() --- diff --git a/tests/test_pagure_lib_git.py b/tests/test_pagure_lib_git.py index 29c8ea2..f7f59b4 100644 --- a/tests/test_pagure_lib_git.py +++ b/tests/test_pagure_lib_git.py @@ -2515,7 +2515,20 @@ index 0000000..60f7480 domerge=False ) + @patch('subprocess.Popen') + def test_generate_gitolite_acls(self, popen): + """ Test calling generate_gitolite_acls. """ + pagure.SESSION = self.session + pagure.lib.git.SESSION = self.session + pagure.APP.config['GITOLITE_HOME'] = '/tmp' + + pagure.lib.git.generate_gitolite_acls() + popen.assert_called_with( + 'HOME=/tmp gitolite compile && ' + 'HOME=/tmp gitolite trigger POST_COMPILE', + cwd='/tmp', shell=True, stderr=-1, stdout=-1 + ) + if __name__ == '__main__': - SUITE = unittest.TestLoader().loadTestsFromTestCase(PagureLibGittests) - unittest.TextTestRunner(verbosity=2).run(SUITE) + unittest.main(verbosity=2)