diff --git a/dev-data.py b/dev-data.py index 293d094..fe3dc3a 100644 --- a/dev-data.py +++ b/dev-data.py @@ -257,7 +257,7 @@ def insert_data(session, username, user_email): # projects_groups group = pagure.lib.search_groups(session, pattern=None, group_name="rel-eng", group_type=None) - repo = pagure.lib.get_project(session, 'test') + repo = pagure.get_authorized_project(session, 'test') item = pagure.lib.model.ProjectGroup( project_id=repo.id, group_id=group.id @@ -267,7 +267,7 @@ def insert_data(session, username, user_email): group = pagure.lib.search_groups(session, pattern=None, group_name="admin", group_type=None) - repo = pagure.lib.get_project(session, 'test2') + repo = pagure.get_authorized_project(session, 'test2') item = pagure.lib.model.ProjectGroup( project_id=repo.id, group_id=group.id @@ -277,8 +277,8 @@ def insert_data(session, username, user_email): ###################################### # pull_requests - repo = pagure.lib.get_project(session, 'test') - forked_repo = pagure.lib.get_project(session, 'test') + repo = pagure.get_authorized_project(session, 'test') + forked_repo = pagure.get_authorized_project(session, 'test') req = pagure.lib.new_pull_request( session=session, repo_from=forked_repo, @@ -298,7 +298,7 @@ def insert_data(session, username, user_email): ###################################### # user_projects user = pagure.lib.search_user(session, username='foo') - repo = pagure.lib.get_project(session, 'test') + repo = pagure.get_authorized_project(session, 'test') item = pagure.lib.model.ProjectUser( project_id=repo.id, user_id=user.id @@ -307,7 +307,7 @@ def insert_data(session, username, user_email): session.commit() user = pagure.lib.search_user(session, username=username) - repo = pagure.lib.get_project(session, 'test2') + repo = pagure.get_authorized_project(session, 'test2') item = pagure.lib.model.ProjectUser( project_id=repo.id, user_id=user.id @@ -327,8 +327,7 @@ def insert_data(session, username, user_email): ###################################### # issue_to_issue - repo = pagure.lib.get_project(session, 'test') - + repo = pagure.get_authorized_project(session, 'test') all_issues = pagure.lib.search_issues(session, repo) pagure.lib.add_issue_dependency(session, all_issues[0], all_issues[1], 'pingou', @@ -367,7 +366,7 @@ def insert_data(session, username, user_email): ###################################### # tags_issues - repo = pagure.lib.get_project(session, 'test') + repo = pagure.get_authorized_project(session, 'test') issues = pagure.lib.search_issues(session, repo) item = pagure.lib.model.TagIssue( issue_uid=issues[0].uid, @@ -408,7 +407,7 @@ def insert_data(session, username, user_email): except: print('requests folder already deleted') - repo = pagure.lib.get_project(session, 'test') + repo = pagure.get_authorized_project(session, 'test') result = pagure.lib.fork_project(session, 'foo', repo, pagure.APP.config['GIT_FOLDER'], pagure.APP.config['DOCS_FOLDER'], diff --git a/pagure/api/__init__.py b/pagure/api/__init__.py index 3c542f3..21eab81 100644 --- a/pagure/api/__init__.py +++ b/pagure/api/__init__.py @@ -341,7 +341,7 @@ def api_project_tags(repo, username=None): if pattern is not None and not pattern.endswith('*'): pattern += '*' - project_obj = pagure.lib.get_project(SESSION, repo, username) + project_obj = pagure.get_authorized_project(SESSION, repo, username) if not project_obj: output = {'output': 'notok', 'error': 'Project not found'} jsonout = flask.jsonify(output) diff --git a/pagure/docs_server.py b/pagure/docs_server.py index bc17900..a72331d 100644 --- a/pagure/docs_server.py +++ b/pagure/docs_server.py @@ -16,6 +16,7 @@ import pygit2 from binaryornot.helpers import is_binary_string +import pagure import pagure.doc_utils import pagure.exceptions import pagure.lib @@ -139,8 +140,8 @@ def view_docs(repo, username=None, namespace=None, filename=None): if '.' in repo: namespace, repo = repo.split('.', 1) - repo = pagure.lib.get_project( - SESSION, repo, user=username, namespace=namespace) + repo = pagure.get_authorized_project(SESSION, repo, user=username, + namespace=namespace) if not repo: flask.abort(404, 'Project not found') diff --git a/pagure/internal/__init__.py b/pagure/internal/__init__.py index 17ac510..abbdb96 100644 --- a/pagure/internal/__init__.py +++ b/pagure/internal/__init__.py @@ -249,7 +249,7 @@ def get_pull_request_ready_branch(): response.status_code = 400 return response - repo = pagure.lib.get_project( + repo = pagure.get_authorized_project( pagure.SESSION, flask.request.form.get('repo', '').strip() or None, namespace=flask.request.form.get('namespace', '').strip() or None, @@ -336,7 +336,7 @@ def get_ticket_template(repo, username=None): response.status_code = 400 return response - repo = pagure.lib.get_project(pagure.SESSION, repo, user=username) + repo = pagure.get_authorized_project(pagure.SESSION, repo, user=username) if repo is None: response = flask.jsonify({ @@ -405,7 +405,7 @@ def get_branches_of_commit(): response.status_code = 400 return response - repo = pagure.lib.get_project( + repo = pagure.get_authorized_project( pagure.SESSION, flask.request.form.get('repo', '').strip() or None, user=flask.request.form.get('repouser', '').strip() or None) diff --git a/pagure/lib/__init__.py b/pagure/lib/__init__.py index 4335bd0..a92a7c7 100644 --- a/pagure/lib/__init__.py +++ b/pagure/lib/__init__.py @@ -44,6 +44,7 @@ from sqlalchemy.orm import scoped_session import pygit2 +import pagure import pagure.exceptions import pagure.lib.git import pagure.lib.login diff --git a/pagure/lib/link.py b/pagure/lib/link.py index f1f87e1..f6fb84b 100644 --- a/pagure/lib/link.py +++ b/pagure/lib/link.py @@ -12,7 +12,7 @@ import re - +import pagure import pagure.exceptions diff --git a/pagure/pfmarkdown.py b/pagure/pfmarkdown.py index 4be6cb8..ccb765f 100644 --- a/pagure/pfmarkdown.py +++ b/pagure/pfmarkdown.py @@ -315,8 +315,10 @@ def makeExtension(*arg, **kwargs): def _issue_exists(user, namespace, repo, idx): """ Utility method checking if a given issue exists. """ + repo_obj = pagure.lib.get_project( pagure.SESSION, name=repo, user=user, namespace=namespace) + if not repo_obj: return False @@ -332,6 +334,7 @@ def _pr_exists(user, namespace, repo, idx): """ Utility method checking if a given PR exists. """ repo_obj = pagure.lib.get_project( pagure.SESSION, name=repo, user=user, namespace=namespace) + if not repo_obj: return False diff --git a/tests/test_pagure_flask_api_fork.py b/tests/test_pagure_flask_api_fork.py index 3ecdecf..8a03857 100644 --- a/tests/test_pagure_flask_api_fork.py +++ b/tests/test_pagure_flask_api_fork.py @@ -23,7 +23,7 @@ from mock import patch sys.path.insert(0, os.path.join(os.path.dirname( os.path.abspath(__file__)), '..')) -import pagure.api +import pagure import pagure.lib import tests @@ -55,8 +55,8 @@ class PagureFlaskApiForktests(tests.Modeltests): tests.create_tokens_acl(self.session) # Create a pull-request - repo = pagure.lib.get_project(self.session, 'test') - forked_repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') + forked_repo = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=forked_repo, @@ -216,8 +216,8 @@ class PagureFlaskApiForktests(tests.Modeltests): tests.create_tokens_acl(self.session) # Create a pull-request - repo = pagure.lib.get_project(self.session, 'test') - forked_repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') + forked_repo = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=forked_repo, @@ -381,8 +381,8 @@ class PagureFlaskApiForktests(tests.Modeltests): tests.create_tokens_acl(self.session) # Create the pull-request to close - repo = pagure.lib.get_project(self.session, 'test') - forked_repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') + forked_repo = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=forked_repo, @@ -494,8 +494,8 @@ class PagureFlaskApiForktests(tests.Modeltests): tests.create_tokens_acl(self.session) # Create the pull-request to close - repo = pagure.lib.get_project(self.session, 'test') - forked_repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') + forked_repo = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=forked_repo, @@ -757,8 +757,8 @@ class PagureFlaskApiForktests(tests.Modeltests): ) # Create a pull-request - repo = pagure.lib.get_project(self.session, 'test') - forked_repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') + forked_repo = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=forked_repo, @@ -981,8 +981,8 @@ class PagureFlaskApiForktests(tests.Modeltests): ) # Create a pull-request - repo = pagure.lib.get_project(self.session, 'test') - forked_repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') + forked_repo = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=forked_repo, diff --git a/tests/test_pagure_flask_api_issue.py b/tests/test_pagure_flask_api_issue.py index 77b9964..f1c04ac 100644 --- a/tests/test_pagure_flask_api_issue.py +++ b/tests/test_pagure_flask_api_issue.py @@ -25,6 +25,7 @@ from mock import patch sys.path.insert(0, os.path.join(os.path.dirname( os.path.abspath(__file__)), '..')) +import pagure import pagure.lib import tests @@ -614,8 +615,6 @@ class PagureFlaskApiIssuetests(tests.Modeltests): 'title': 'test issue', 'issue_content': 'This issue needs attention', } - - # Valid request output = self.app.post( '/api/0/test/new_issue', data=data, headers=headers) self.assertEqual(output.status_code, 200) @@ -1716,7 +1715,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): ) # Create private issue - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -1886,7 +1885,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): ) # Create normal issue - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -1928,7 +1927,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.session.add(item) self.session.commit() - repo = pagure.lib.get_project(self.session, 'foo') + repo = pagure.get_authorized_project(self.session, 'foo') # Create private issue msg = pagure.lib.new_issue( session=self.session, @@ -1943,7 +1942,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.assertEqual(msg.title, 'Test issue') # Check status before - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(issue.status, 'Open') @@ -1966,7 +1965,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): ) # No change - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(issue.status, 'Open') @@ -1985,7 +1984,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): ) # No change - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(issue.status, 'Open') @@ -2264,7 +2263,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): ) # Create normal issue - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -2279,7 +2278,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.assertEqual(msg.title, 'Test issue #1') # Check comments before - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 0) @@ -2302,7 +2301,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): ) # No change - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(issue.status, 'Open') @@ -2321,7 +2320,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): ) # One comment added - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 1) @@ -2355,7 +2354,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.session.add(item) self.session.commit() - repo = pagure.lib.get_project(self.session, 'foo') + repo = pagure.get_authorized_project(self.session, 'foo') # Create private issue msg = pagure.lib.new_issue( session=self.session, @@ -2371,7 +2370,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.assertEqual(msg.title, 'Test issue') # Check before - repo = pagure.lib.get_project(self.session, 'foo') + repo = pagure.get_authorized_project(self.session, 'foo') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 0) @@ -2390,7 +2389,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.assertEqual(pagure.api.APIERROR.EINVALIDTOK.value, data['error']) # No comment added - repo = pagure.lib.get_project(self.session, 'foo') + repo = pagure.get_authorized_project(self.session, 'foo') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 0) @@ -2787,7 +2786,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): ) # Create normal issue - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -2802,7 +2801,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.assertEqual(msg.title, 'Test issue #1') # Check comments before - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 0) @@ -2834,7 +2833,8 @@ class PagureFlaskApiIssuetests(tests.Modeltests): data, {'message': 'Assignee reset'} ) - repo = pagure.lib.get_project(self.session, 'test') + # No change + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(issue.assignee, None) @@ -2886,7 +2886,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): ) # One comment added - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(issue.assignee.user, 'pingou') @@ -2920,7 +2920,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.session.add(item) self.session.commit() - repo = pagure.lib.get_project(self.session, 'foo') + repo = pagure.get_authorized_project(self.session, 'foo') # Create private issue msg = pagure.lib.new_issue( session=self.session, @@ -2936,7 +2936,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.assertEqual(msg.title, 'Test issue') # Check before - repo = pagure.lib.get_project(self.session, 'foo') + repo = pagure.get_authorized_project(self.session, 'foo') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 0) @@ -2955,7 +2955,7 @@ class PagureFlaskApiIssuetests(tests.Modeltests): self.assertEqual(pagure.api.APIERROR.EINVALIDTOK.value, data['error']) # No comment added - repo = pagure.lib.get_project(self.session, 'foo') + repo = pagure.get_authorized_project(self.session, 'foo') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 0) diff --git a/tests/test_pagure_flask_api_project.py b/tests/test_pagure_flask_api_project.py index 6bfb9b5..8940d9e 100644 --- a/tests/test_pagure_flask_api_project.py +++ b/tests/test_pagure_flask_api_project.py @@ -115,7 +115,7 @@ class PagureFlaskApiProjecttests(tests.Modeltests): tests.create_projects(self.session) # Check before adding - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') self.assertEqual(repo.tags, []) # Adding a tag @@ -125,7 +125,7 @@ class PagureFlaskApiProjecttests(tests.Modeltests): self.assertEqual(output, ['Issue tagged with: infra']) # Check after adding - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') self.assertEqual(len(repo.tags), 1) self.assertEqual(repo.tags_text, ['infra']) diff --git a/tests/test_pagure_flask_docs.py b/tests/test_pagure_flask_docs.py index de232f8..5ca5d64 100644 --- a/tests/test_pagure_flask_docs.py +++ b/tests/test_pagure_flask_docs.py @@ -24,6 +24,7 @@ from mock import patch sys.path.insert(0, os.path.join(os.path.dirname( os.path.abspath(__file__)), '..')) +import pagure import pagure.docs_server import pagure.lib import tests @@ -120,7 +121,7 @@ class PagureFlaskDocstests(tests.Modeltests): tests.create_projects(self.session) # Turn on the docs project since it's off by default - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') repo.settings = {'project_documentation': True} self.session.add(repo) self.session.commit() @@ -163,6 +164,51 @@ class PagureFlaskDocstests(tests.Modeltests): self.assertEqual(output.status_code, 404) self._set_up_doc() + # forked doc repo + docrepo = os.path.join(self.path, 'docs', 'test', 'test.git') + repo = pygit2.init_repository(docrepo) + + # Create files in that git repo + with open(os.path.join(docrepo, 'sources'), 'w') as stream: + stream.write('foo\n bar') + repo.index.add('sources') + repo.index.write() + + folderpart = os.path.join(docrepo, 'folder1', 'folder2') + os.makedirs(folderpart) + with open(os.path.join(folderpart, 'test_file'), 'w') as stream: + stream.write('row1\nrow2\nrow3') + repo.index.add(os.path.join('folder1', 'folder2', 'test_file')) + repo.index.write() + + # Commits the files added + tree = repo.index.write_tree() + author = pygit2.Signature( + 'Alice Author', 'alice@authors.tld') + committer = pygit2.Signature( + 'Cecil Committer', 'cecil@committers.tld') + repo.create_commit( + 'refs/heads/master', # the name of the reference to update + author, + committer, + 'Add test files and folder', + # binary string representing the tree object ID + tree, + # list of binary strings representing parents of the new commit + [] + ) + + # Push the changes to the bare repo + remote = repo.create_remote( + 'origin', os.path.join(self.path, 'docs', 'test.git')) + + PagureRepo.push(remote, 'refs/heads/master:refs/heads/master') + + # Turn on the docs project since it's off by default + repo = pagure.get_authorized_project(self.session, 'test') + repo.settings = {'project_documentation': True} + self.session.add(repo) + self.session.commit() # Now check the UI diff --git a/tests/test_pagure_flask_dump_load_ticket.py b/tests/test_pagure_flask_dump_load_ticket.py index aecf319..ac84724 100644 --- a/tests/test_pagure_flask_dump_load_ticket.py +++ b/tests/test_pagure_flask_dump_load_ticket.py @@ -24,6 +24,7 @@ from mock import patch sys.path.insert(0, os.path.join(os.path.dirname( os.path.abspath(__file__)), '..')) +import pagure import pagure.lib import tests @@ -67,7 +68,7 @@ class PagureFlaskDumpLoadTicketTests(tests.Modeltests): os.makedirs(self.gitrepo) repo_obj = pygit2.init_repository(self.gitrepo, bare=True) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') # Create an issue to play with msg = pagure.lib.new_issue( session=self.session, @@ -208,7 +209,7 @@ class PagureFlaskDumpLoadTicketTests(tests.Modeltests): ) # Post loading - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') self.assertEqual(len(repo.issues), 1) issue = pagure.lib.search_issues(self.session, repo, issueid=1) diff --git a/tests/test_pagure_flask_internal.py b/tests/test_pagure_flask_internal.py index 0a51015..017f286 100644 --- a/tests/test_pagure_flask_internal.py +++ b/tests/test_pagure_flask_internal.py @@ -23,6 +23,7 @@ from mock import patch sys.path.insert(0, os.path.join(os.path.dirname( os.path.abspath(__file__)), '..')) +import pagure import pagure.lib import tests @@ -55,7 +56,7 @@ class PagureFlaskInternaltests(tests.Modeltests): tests.create_projects(self.session) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, @@ -117,7 +118,7 @@ class PagureFlaskInternaltests(tests.Modeltests): js_data = json.loads(output.data) self.assertDictEqual(js_data, {'message': 'Comment added'}) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') request = repo.requests[0] self.assertEqual(len(request.comments), 1) self.assertEqual(len(request.discussion), 1) @@ -139,7 +140,7 @@ class PagureFlaskInternaltests(tests.Modeltests): tests.create_projects(self.session) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -196,7 +197,7 @@ class PagureFlaskInternaltests(tests.Modeltests): js_data = json.loads(output.data) self.assertDictEqual(js_data, {'message': 'Comment added'}) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = repo.issues[0] self.assertEqual(len(issue.comments), 1) @@ -218,7 +219,7 @@ class PagureFlaskInternaltests(tests.Modeltests): tests.create_projects(self.session) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -285,7 +286,7 @@ class PagureFlaskInternaltests(tests.Modeltests): js_data = json.loads(output.data) self.assertDictEqual(js_data, {'message': 'Comment added'}) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = repo.issues[0] self.assertEqual(len(issue.comments), 1) @@ -494,7 +495,7 @@ class PagureFlaskInternaltests(tests.Modeltests): # Create a PR for these changes tests.create_projects(self.session) - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=project, @@ -533,7 +534,7 @@ class PagureFlaskInternaltests(tests.Modeltests): self.assertEqual(output.status_code, 404) # With all the desired information - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') data = { 'csrf_token': csrf_token, 'requestid': project.requests[0].uid, @@ -616,7 +617,7 @@ class PagureFlaskInternaltests(tests.Modeltests): # Create a PR for these changes tests.create_projects(self.session) - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=project, @@ -655,7 +656,7 @@ class PagureFlaskInternaltests(tests.Modeltests): self.assertEqual(output.status_code, 404) # With all the desired information - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') data = { 'csrf_token': csrf_token, 'requestid': project.requests[0].uid, @@ -759,7 +760,7 @@ class PagureFlaskInternaltests(tests.Modeltests): # Create a PR for these changes tests.create_projects(self.session) - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=project, @@ -796,7 +797,7 @@ class PagureFlaskInternaltests(tests.Modeltests): self.assertEqual(output.status_code, 404) # With all the desired information - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') data = { 'csrf_token': csrf_token, 'requestid': project.requests[0].uid, @@ -900,7 +901,7 @@ class PagureFlaskInternaltests(tests.Modeltests): # Create a PR for these changes tests.create_projects(self.session) - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=project, @@ -937,7 +938,7 @@ class PagureFlaskInternaltests(tests.Modeltests): self.assertEqual(output.status_code, 404) # With all the desired information - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') data = { 'csrf_token': csrf_token, 'requestid': project.requests[0].uid, diff --git a/tests/test_pagure_flask_ui_fork.py b/tests/test_pagure_flask_ui_fork.py index fbe0b33..7464448 100644 --- a/tests/test_pagure_flask_ui_fork.py +++ b/tests/test_pagure_flask_ui_fork.py @@ -24,6 +24,7 @@ from mock import patch sys.path.insert(0, os.path.join(os.path.dirname( os.path.abspath(__file__)), '..')) +import pagure import pagure.lib import tests from pagure.lib.repo import PagureRepo @@ -206,7 +207,7 @@ class PagureFlaskForktests(tests.Modeltests): PagureRepo.push(ori_remote, refname) # Create a PR for these changes - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=project, @@ -242,7 +243,7 @@ class PagureFlaskForktests(tests.Modeltests): self.set_up_git_repo(new_project=None, branch_from='feature') - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') self.assertEqual(len(project.requests), 1) # View the pull-request @@ -317,7 +318,7 @@ class PagureFlaskForktests(tests.Modeltests): self.assertEqual(output.status_code, 404) # Project w/o pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = False repo.settings = settings @@ -351,7 +352,7 @@ class PagureFlaskForktests(tests.Modeltests): 'assigned to be merged', output.data) # PR assigned but not to this user - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') req = repo.requests[0] req.assignee_id = 2 self.session.add(req) @@ -565,7 +566,7 @@ class PagureFlaskForktests(tests.Modeltests): self.set_up_git_repo(new_project=None, branch_from='feature') # Project w/o pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = False repo.settings = settings @@ -633,7 +634,7 @@ class PagureFlaskForktests(tests.Modeltests): PagureRepo.push(ori_remote, refname) # Create a PR for these changes - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=item, @@ -695,7 +696,7 @@ class PagureFlaskForktests(tests.Modeltests): # Create a PR for these "changes" (there are none, both repos are # empty) - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=item, @@ -789,7 +790,7 @@ class PagureFlaskForktests(tests.Modeltests): 'href="/test/pull-requests?status=0">Closed', output.data) # Project w/o pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = False repo.settings = settings @@ -862,7 +863,7 @@ index 9f44358..2a552bb 100644 self.assertEqual(patch, exp) # Project w/o pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = False repo.settings = settings @@ -976,7 +977,7 @@ index 9f44358..2a552bb 100644 # Create a PR for these "changes" (there are none, both repos are # empty) - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=item, @@ -1067,7 +1068,7 @@ index 0000000..2a552bb # Create a PR for these "changes" (there are none, both repos are # empty) - project = pagure.lib.get_project(self.session, 'test') + project = pagure.get_authorized_project(self.session, 'test') req = pagure.lib.new_pull_request( session=self.session, repo_from=item, @@ -1149,7 +1150,7 @@ index 0000000..2a552bb user.username = 'pingou' with tests.user_set(pagure.APP, user): # Project w/o pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = False repo.settings = settings @@ -1162,7 +1163,7 @@ index 0000000..2a552bb self.assertEqual(output.status_code, 404) # Project w/ pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = True repo.settings = settings @@ -1288,7 +1289,7 @@ index 0000000..2a552bb output.data) # Pull-Request closed - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') req = repo.requests[0] req.status = 'Closed' req.closed_by_in = 1 @@ -1301,7 +1302,7 @@ index 0000000..2a552bb self.assertEqual(output.status_code, 403) # Project w/o pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = False repo.settings = settings @@ -1370,8 +1371,8 @@ index 0000000..2a552bb tests.create_projects_git( os.path.join(self.path, 'requests'), bare=True) - repo = pagure.lib.get_project(self.session, 'test') - fork = pagure.lib.get_project(self.session, 'test', user='foo') + repo = pagure.get_authorized_project(self.session, 'test') + fork = pagure.get_authorized_project(self.session, 'test', user='foo') self.set_up_git_repo( new_project=fork, branch_from='feature', mtype='FF') @@ -1518,8 +1519,8 @@ index 0000000..2a552bb tests.create_projects_git( os.path.join(self.path, 'requests'), bare=True) - repo = pagure.lib.get_project(self.session, 'test') - fork = pagure.lib.get_project(self.session, 'test', user='foo') + repo = pagure.get_authorized_project(self.session, 'test') + fork = pagure.get_authorized_project(self.session, 'test', user='foo') # Create a git repo to play with gitrepo = os.path.join(self.path, 'repos', 'test.git') @@ -1569,8 +1570,8 @@ index 0000000..2a552bb tests.create_projects_git( os.path.join(self.path, 'requests'), bare=True) - repo = pagure.lib.get_project(self.session, 'test') - fork = pagure.lib.get_project(self.session, 'test', user='foo') + repo = pagure.get_authorized_project(self.session, 'test') + fork = pagure.get_authorized_project(self.session, 'test', user='foo') # Create a git repo to play with gitrepo = os.path.join(self.path, 'repos', 'test.git') @@ -1634,7 +1635,7 @@ index 0000000..2a552bb output.data) # Project w/o pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = False repo.settings = settings @@ -1653,7 +1654,7 @@ index 0000000..2a552bb self.test_pull_request_add_comment() # Project w/ pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = True repo.settings = settings @@ -1715,7 +1716,7 @@ index 0000000..2a552bb output.data) # Project w/o pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = False repo.settings = settings @@ -1809,7 +1810,7 @@ index 0000000..2a552bb '\n Comment updated', output.data) # Project w/o pull-request - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['pull_requests'] = False repo.settings = settings @@ -1879,7 +1880,7 @@ index 0000000..2a552bb self.assertEqual(output.status_code, 404) # Project requiring a merge commit - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') settings = repo.settings settings['always_merge'] = True repo.settings = settings diff --git a/tests/test_pagure_flask_ui_issues.py b/tests/test_pagure_flask_ui_issues.py index b328ea0..bb47299 100644 --- a/tests/test_pagure_flask_ui_issues.py +++ b/tests/test_pagure_flask_ui_issues.py @@ -29,6 +29,7 @@ from mock import patch sys.path.insert(0, os.path.join(os.path.dirname( os.path.abspath(__file__)), '..')) +import pagure import pagure.lib import tests @@ -145,7 +146,7 @@ class PagureFlaskIssuestests(tests.Modeltests): output.data) # Project w/o issue tracker - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') repo.settings = {'issue_tracker': False} self.session.add(repo) self.session.commit() @@ -211,7 +212,7 @@ class PagureFlaskIssuestests(tests.Modeltests): output.data) # Project w/o issue tracker - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') repo.settings = {'issue_tracker': False} self.session.add(repo) self.session.commit() @@ -297,7 +298,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertTrue( '
Woohoo a second comment !
' in output.data) self.assertEqual(output.data.count('comment_body">'), 2) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 1) @@ -1353,7 +1354,7 @@ class PagureFlaskIssuestests(tests.Modeltests): '/test/issue/1/update', data=data, follow_redirects=True) self.assertEqual(output.status_code, 404) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 0) @@ -1369,7 +1370,7 @@ class PagureFlaskIssuestests(tests.Modeltests): os.path.join(self.path), bare=True) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -1381,7 +1382,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.session.commit() self.assertEqual(msg.title, 'Test issue') - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -1445,7 +1446,7 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Successfully edited issue #1', output.data) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(issue.depending_text, [2]) self.assertEqual(issue.blocking_text, []) @@ -1462,7 +1463,7 @@ class PagureFlaskIssuestests(tests.Modeltests): os.path.join(self.path), bare=True) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -1474,7 +1475,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.session.commit() self.assertEqual(msg.title, 'Test issue') - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -1567,7 +1568,7 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Successfully edited issue #1', output.data) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(issue.depending_text, []) self.assertEqual(issue.blocking_text, [2]) @@ -1588,7 +1589,7 @@ class PagureFlaskIssuestests(tests.Modeltests): os.path.join(self.path, 'tickets'), bare=True) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -1678,7 +1679,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertDictEqual(json_data, exp) # Project w/o issue tracker - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') repo.settings = {'issue_tracker': False} self.session.add(repo) self.session.commit() @@ -1695,7 +1696,7 @@ class PagureFlaskIssuestests(tests.Modeltests): os.path.join(self.path, 'tickets'), bare=True) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -1719,7 +1720,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertEqual(output.status_code, 404) # Project w/o issue tracker - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') repo.settings = {'issue_tracker': False} self.session.add(repo) self.session.commit() @@ -1733,7 +1734,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.test_upload_issue() # Project w/ issue tracker - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') repo.settings = {'issue_tracker': True} self.session.add(repo) self.session.commit() @@ -1754,7 +1755,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertEqual(output.status_code, 200) # Project w/o issue tracker - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') repo.settings = {'issue_tracker': False} self.session.add(repo) self.session.commit() @@ -1795,7 +1796,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertEqual(output.status_code, 404) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -1868,7 +1869,7 @@ class PagureFlaskIssuestests(tests.Modeltests): 'We should work on this!
'), 1) # Project w/o issue tracker - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') repo.settings = {'issue_tracker': False} self.session.add(repo) self.session.commit() @@ -1905,7 +1906,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertEqual(output.status_code, 302) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -2008,7 +2009,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertEqual(output.status_code, 302) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -2076,7 +2077,7 @@ class PagureFlaskIssuestests(tests.Modeltests): tests.create_projects_git(os.path.join(self.path, 'tickets')) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -2136,7 +2137,7 @@ class PagureFlaskIssuestests(tests.Modeltests): output.data) # Project w/o issue tracker - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') repo.settings = {'issue_tracker': False} self.session.add(repo) self.session.commit() @@ -2158,7 +2159,7 @@ class PagureFlaskIssuestests(tests.Modeltests): os.path.join(self.path), bare=True) # Create issues to play with - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') msg = pagure.lib.new_issue( session=self.session, repo=repo, @@ -2208,7 +2209,7 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Woohoo a second comment !
' in output.data) self.assertEqual(output.data.count('comment_body">'), 2) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 1) self.assertEqual( @@ -2251,7 +2252,7 @@ class PagureFlaskIssuestests(tests.Modeltests): '\n Comment updated', output.data) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 1) self.assertEqual(issue.comments[0].comment, 'Updated comment') @@ -2289,7 +2290,7 @@ class PagureFlaskIssuestests(tests.Modeltests): '\n Comment updated', output.data) - repo = pagure.lib.get_project(self.session, 'test') + repo = pagure.get_authorized_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 1) self.assertEqual(issue.comments[0].comment, 'Second update') @@ -2410,7 +2411,7 @@ class PagureFlaskIssuestests(tests.Modeltests): '