change tracker only when required (#77168)
gitea/gitea-redmine/pipeline/head This commit looks good
Details
gitea/gitea-redmine/pipeline/head This commit looks good
Details
This commit is contained in:
parent
b4d45ca6fa
commit
f43e71ab66
|
@ -37,6 +37,8 @@ CLOSED_STATUSES = [
|
|||
|
||||
REDMINE_TRACKERS = {
|
||||
'Développement': 2,
|
||||
'Bug': 1,
|
||||
'Documentation': 6,
|
||||
}
|
||||
|
||||
|
||||
|
@ -203,7 +205,8 @@ def set_status(status_id, unless=[]):
|
|||
def inner(issue, payload):
|
||||
current_status = issue.status.id
|
||||
if current_status not in unless:
|
||||
issue.tracker_id = REDMINE_TRACKERS['Développement']
|
||||
if issue.tracker_id not in list(REDMINE_TRACKERS.values()):
|
||||
issue.tracker_id = REDMINE_TRACKERS['Développement']
|
||||
issue.status_id = status_id
|
||||
|
||||
return inner
|
||||
|
|
14
test_app.py
14
test_app.py
|
@ -86,7 +86,16 @@ def test_flatten(dict, expected):
|
|||
assert gitea_redmine.flatten(dict) == expected
|
||||
|
||||
|
||||
def test_handle_pull_request_opened(mocker):
|
||||
@pytest.mark.parametrize(
|
||||
'current_tracker_id,expected_tracker_id',
|
||||
[
|
||||
(gitea_redmine.REDMINE_TRACKERS['Développement'], gitea_redmine.REDMINE_TRACKERS['Développement']),
|
||||
(gitea_redmine.REDMINE_TRACKERS['Bug'], gitea_redmine.REDMINE_TRACKERS['Bug']),
|
||||
(gitea_redmine.REDMINE_TRACKERS['Documentation'], gitea_redmine.REDMINE_TRACKERS['Documentation']),
|
||||
(None, gitea_redmine.REDMINE_TRACKERS['Développement']),
|
||||
],
|
||||
)
|
||||
def test_handle_pull_request_opened(current_tracker_id, expected_tracker_id, mocker):
|
||||
redmine_user = mocker.Mock(id=42)
|
||||
get_redmine_user = mocker.patch.object(gitea_redmine, 'get_redmine_user', return_value=redmine_user)
|
||||
|
||||
|
@ -111,12 +120,13 @@ def test_handle_pull_request_opened(mocker):
|
|||
project = mocker.Mock()
|
||||
project.parent = None
|
||||
issue = mocker.Mock()
|
||||
issue.tracker_id = current_tracker_id
|
||||
gitea_redmine.handle_pull_request_opened(issue, payload, project)
|
||||
|
||||
get_redmine_user.assert_called_once_with('testuser')
|
||||
|
||||
assert issue.assigned_to_id == redmine_user.id
|
||||
assert issue.tracker_id == gitea_redmine.REDMINE_TRACKERS['Développement']
|
||||
assert issue.tracker_id == expected_tracker_id
|
||||
assert issue.status_id == gitea_redmine.REDMINE_STATUSES['Solution proposée']
|
||||
assert issue.notes == (
|
||||
'Test User (testuser) a ouvert une pull request sur Gitea concernant cette demande :\n\n'
|
||||
|
|
Loading…
Reference in New Issue