Beispiel #1
0
def test_open(payload_mr_open: Dict[str, Any], monkeypatch):
    mr_event = MergeRequestEvent.from_dict(payload_mr_open)
    monkeypatch.setattr(commons, '_get_google_chat_id', lambda _: 100042)
    message = mr_event.create_message()

    assert '*Opened*' in message.text
    assert 'by Chuck Norris' in message.text
    assert '*Assignees:* <users/100042>' in message.text
Beispiel #2
0
def test_update(payload_mr_update: Dict[str, Any], monkeypatch):
    mr_event = MergeRequestEvent.from_dict(payload_mr_update)
    user_mappings = {
        1: 1001,
        4: 1004,
    }
    monkeypatch.setattr(commons, '_get_google_chat_id', user_mappings.get)
    message = mr_event.create_message()

    assert ('<https://www.gitlab.com/lukany/ggci|!42> *reassigned*'
            ' to Carl, <users/1004>') in message.text
Beispiel #3
0
def test_invalid_action(payload_mr_open: Dict[str, Any]):
    payload_invalid_action = payload_mr_open
    payload_invalid_action['object_attributes']['action'] = 'shredded'
    with pytest.raises(UnsupportedEvent):
        MergeRequestEvent.from_dict(payload_invalid_action)
Beispiel #4
0
def test_no_action(payload_mr_open: Dict[str, Any]):
    payload_without_action = payload_mr_open
    del payload_without_action['object_attributes']['action']
    with pytest.raises(UnsupportedEvent):
        MergeRequestEvent.from_dict(payload_without_action)
Beispiel #5
0
def test_reopen(payload_mr_reopen: Dict[str, Any]):
    mr_event = MergeRequestEvent.from_dict(payload_mr_reopen)
    message = mr_event.create_message()
    assert message.text == (
        '<https://www.gitlab.com/lukany/ggci|!42> *reopened* by Chuck Norris.')
Beispiel #6
0
def test_close(payload_mr_close: Dict[str, Any]):
    mr_event = MergeRequestEvent.from_dict(payload_mr_close)
    message = mr_event.create_message()
    assert (
        message.text ==
        '<https://www.gitlab.com/lukany/ggci|!42> *closed* by Chuck Norris.')
Beispiel #7
0
def _create_mr_event(payload: Dict[str, Any]) -> MergeRequestEvent:
    return MergeRequestEvent.from_dict(payload)