misc: apply pre-commit tools (#74039)
This commit is contained in:
parent
c3bc4d5356
commit
71ff56b6a9
|
@ -17,11 +17,7 @@ REDMINE_API_KEY = os.environ["REDMINE_API_KEY"]
|
||||||
REDMINE_CLIENT = redminelib.Redmine(REDMINE_URL, key=REDMINE_API_KEY)
|
REDMINE_CLIENT = redminelib.Redmine(REDMINE_URL, key=REDMINE_API_KEY)
|
||||||
REDMINE_ASSIGNABLE_GROUP = int(os.environ.get('REDMINE_ASSIGNABLE_GROUP', 21))
|
REDMINE_ASSIGNABLE_GROUP = int(os.environ.get('REDMINE_ASSIGNABLE_GROUP', 21))
|
||||||
REDMINE_EXCLUDED_PROJECTS = [
|
REDMINE_EXCLUDED_PROJECTS = [
|
||||||
i.strip()
|
i.strip() for i in os.environ.get('REDMINE_EXCLUDED_PROJECTS', 'projets-clients').split(',')
|
||||||
for i in os.environ.get(
|
|
||||||
'REDMINE_EXCLUDED_PROJECTS',
|
|
||||||
'projets-clients'
|
|
||||||
).split(',')
|
|
||||||
]
|
]
|
||||||
|
|
||||||
REDMINE_STATUSES = {
|
REDMINE_STATUSES = {
|
||||||
|
@ -138,7 +134,6 @@ def get_redmine_issue(id):
|
||||||
return REDMINE_CLIENT.issue.get(id, includes=['journals'])
|
return REDMINE_CLIENT.issue.get(id, includes=['journals'])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def get_redmine_project(id):
|
def get_redmine_project(id):
|
||||||
return REDMINE_CLIENT.project.get(id)
|
return REDMINE_CLIENT.project.get(id)
|
||||||
|
|
||||||
|
@ -246,22 +241,19 @@ def set_value_if_empty(field, value):
|
||||||
|
|
||||||
return inner
|
return inner
|
||||||
|
|
||||||
|
|
||||||
PULL_REQUEST_OPENED_NOTE = '{pull_request_user_full_name} ({pull_request_user_username}) a ouvert une pull request sur Gitea concernant cette demande :\n\n* URL : {pull_request_url}\n* Titre : {pull_request_title}\n* Modifications : {pull_request_url}/files'
|
PULL_REQUEST_OPENED_NOTE = '{pull_request_user_full_name} ({pull_request_user_username}) a ouvert une pull request sur Gitea concernant cette demande :\n\n* URL : {pull_request_url}\n* Titre : {pull_request_title}\n* Modifications : {pull_request_url}/files'
|
||||||
|
|
||||||
handle_pull_request_opened = make_handler(
|
handle_pull_request_opened = make_handler(
|
||||||
assign_to('pull_request_user_username'),
|
assign_to('pull_request_user_username'),
|
||||||
set_status(REDMINE_STATUSES['Solution proposée'], unless=CLOSED_STATUSES),
|
set_status(REDMINE_STATUSES['Solution proposée'], unless=CLOSED_STATUSES),
|
||||||
add_note(
|
add_note(PULL_REQUEST_OPENED_NOTE),
|
||||||
PULL_REQUEST_OPENED_NOTE
|
|
||||||
),
|
|
||||||
save(),
|
save(),
|
||||||
)
|
)
|
||||||
handle_pull_request_opened_draft = make_handler(
|
handle_pull_request_opened_draft = make_handler(
|
||||||
assign_to('pull_request_user_username'),
|
assign_to('pull_request_user_username'),
|
||||||
set_status(REDMINE_STATUSES['En cours'], unless=CLOSED_STATUSES),
|
set_status(REDMINE_STATUSES['En cours'], unless=CLOSED_STATUSES),
|
||||||
add_note(
|
add_note(PULL_REQUEST_OPENED_NOTE),
|
||||||
PULL_REQUEST_OPENED_NOTE
|
|
||||||
),
|
|
||||||
save(),
|
save(),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
3
setup.py
3
setup.py
|
@ -1,6 +1,5 @@
|
||||||
import os
|
import os
|
||||||
import subprocess
|
import subprocess
|
||||||
|
|
||||||
from distutils.command.sdist import sdist
|
from distutils.command.sdist import sdist
|
||||||
|
|
||||||
from setuptools import find_packages, setup
|
from setuptools import find_packages, setup
|
||||||
|
@ -45,8 +44,6 @@ def get_version():
|
||||||
return '0.0'
|
return '0.0'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
name='gitea_redmine',
|
name='gitea_redmine',
|
||||||
version=get_version(),
|
version=get_version(),
|
||||||
|
|
36
test_app.py
36
test_app.py
|
@ -121,13 +121,15 @@ def test_handle_pull_request_opened(mocker):
|
||||||
issue.save.assert_called_once()
|
issue.save.assert_called_once()
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.parametrize(
|
||||||
@pytest.mark.parametrize('status', [
|
'status',
|
||||||
gitea_redmine.REDMINE_STATUSES['Résolu'],
|
[
|
||||||
gitea_redmine.REDMINE_STATUSES['Fermé'],
|
gitea_redmine.REDMINE_STATUSES['Résolu'],
|
||||||
gitea_redmine.REDMINE_STATUSES['Solution déployée'],
|
gitea_redmine.REDMINE_STATUSES['Fermé'],
|
||||||
gitea_redmine.REDMINE_STATUSES['Rejeté'],
|
gitea_redmine.REDMINE_STATUSES['Solution déployée'],
|
||||||
])
|
gitea_redmine.REDMINE_STATUSES['Rejeté'],
|
||||||
|
],
|
||||||
|
)
|
||||||
def test_handle_pull_request_opened_skips_closed_statuses(status, mocker):
|
def test_handle_pull_request_opened_skips_closed_statuses(status, mocker):
|
||||||
redmine_user = mocker.Mock(id=42)
|
redmine_user = mocker.Mock(id=42)
|
||||||
get_redmine_user = mocker.patch.object(gitea_redmine, 'get_redmine_user', return_value=redmine_user)
|
get_redmine_user = mocker.patch.object(gitea_redmine, 'get_redmine_user', return_value=redmine_user)
|
||||||
|
@ -157,7 +159,7 @@ def test_handle_pull_request_opened_skips_closed_statuses(status, mocker):
|
||||||
gitea_redmine.handle_pull_request_opened(issue, payload, project)
|
gitea_redmine.handle_pull_request_opened(issue, payload, project)
|
||||||
|
|
||||||
assert issue.status_id == original_status
|
assert issue.status_id == original_status
|
||||||
|
|
||||||
|
|
||||||
def test_handle_pull_request_edited(mocker):
|
def test_handle_pull_request_edited(mocker):
|
||||||
redmine_user = mocker.Mock(id=42)
|
redmine_user = mocker.Mock(id=42)
|
||||||
|
@ -347,9 +349,7 @@ def test_handle_pull_request_reviewed_approved_already_approved(mocker):
|
||||||
project = project = mocker.Mock()
|
project = project = mocker.Mock()
|
||||||
project.parent = None
|
project.parent = None
|
||||||
|
|
||||||
issue = mocker.Mock(
|
issue = mocker.Mock(status=mocker.Mock(id=gitea_redmine.REDMINE_STATUSES["Solution validée"]))
|
||||||
status=mocker.Mock(id=gitea_redmine.REDMINE_STATUSES["Solution validée"])
|
|
||||||
)
|
|
||||||
gitea_redmine.handle_pull_request_approved(issue, payload, project)
|
gitea_redmine.handle_pull_request_approved(issue, payload, project)
|
||||||
issue.save.assert_not_called()
|
issue.save.assert_not_called()
|
||||||
|
|
||||||
|
@ -409,7 +409,9 @@ def test_incoming_webhook_calls_proper_handler(client, mocker):
|
||||||
issue1 = mocker.Mock(journals=[], project=project)
|
issue1 = mocker.Mock(journals=[], project=project)
|
||||||
issue2 = mocker.Mock(journals=[], project=project)
|
issue2 = mocker.Mock(journals=[], project=project)
|
||||||
issue3 = mocker.Mock(journals=[], project=project)
|
issue3 = mocker.Mock(journals=[], project=project)
|
||||||
get_redmine_issue = mocker.patch.object(gitea_redmine, 'get_redmine_issue', side_effect=[issue1, issue2, issue3])
|
get_redmine_issue = mocker.patch.object(
|
||||||
|
gitea_redmine, 'get_redmine_issue', side_effect=[issue1, issue2, issue3]
|
||||||
|
)
|
||||||
get_redmine_project = mocker.patch.object(gitea_redmine, 'get_redmine_project', return_value=project)
|
get_redmine_project = mocker.patch.object(gitea_redmine, 'get_redmine_project', return_value=project)
|
||||||
|
|
||||||
get_handler = mocker.patch.object(gitea_redmine, 'get_handler', return_value=[mocker.Mock(), 'foo'])
|
get_handler = mocker.patch.object(gitea_redmine, 'get_handler', return_value=[mocker.Mock(), 'foo'])
|
||||||
|
@ -419,9 +421,7 @@ def test_incoming_webhook_calls_proper_handler(client, mocker):
|
||||||
"pull_request": {
|
"pull_request": {
|
||||||
"title": "Fix #1234",
|
"title": "Fix #1234",
|
||||||
"body": "And this was caused by #5678 that should not be referenced",
|
"body": "And this was caused by #5678 that should not be referenced",
|
||||||
"head": {
|
"head": {"ref": "wip/9100-something"},
|
||||||
"ref": "wip/9100-something"
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -450,9 +450,7 @@ def test_make_handler_ignore_excluded_projects(mocker):
|
||||||
issue = mocker.Mock()
|
issue = mocker.Mock()
|
||||||
project = mocker.Mock()
|
project = mocker.Mock()
|
||||||
is_excluded_project = mocker.patch.object(gitea_redmine, 'is_excluded_project', return_value=True)
|
is_excluded_project = mocker.patch.object(gitea_redmine, 'is_excluded_project', return_value=True)
|
||||||
handler = gitea_redmine.make_handler(
|
handler = gitea_redmine.make_handler(f1)
|
||||||
f1
|
|
||||||
)
|
|
||||||
handler(issue, {}, project)
|
handler(issue, {}, project)
|
||||||
|
|
||||||
f1.assert_not_called()
|
f1.assert_not_called()
|
||||||
|
@ -476,7 +474,7 @@ def test_excluded_project_parent_true(mocker):
|
||||||
mocker.patch.object(gitea_redmine, 'REDMINE_EXCLUDED_PROJECTS', ['parent'])
|
mocker.patch.object(gitea_redmine, 'REDMINE_EXCLUDED_PROJECTS', ['parent'])
|
||||||
parent = mocker.Mock(identifier='parent', id=12)
|
parent = mocker.Mock(identifier='parent', id=12)
|
||||||
get_redmine_project = mocker.patch.object(gitea_redmine, 'get_redmine_project', return_value=parent)
|
get_redmine_project = mocker.patch.object(gitea_redmine, 'get_redmine_project', return_value=parent)
|
||||||
|
|
||||||
project = mocker.Mock(identifier='project')
|
project = mocker.Mock(identifier='project')
|
||||||
project.parent = parent
|
project.parent = parent
|
||||||
assert gitea_redmine.is_excluded_project(project) is True
|
assert gitea_redmine.is_excluded_project(project) is True
|
||||||
|
|
Loading…
Reference in New Issue