def test_update_does_nothing_if_reviewer_is_author(): mock_api = YouTrackAPI("instance", "token") mock_api.update_ticket = MagicMock(return_value=(True, {})) sut = Ticket(own_reviewer_payload, mock_api, mock_user_dict) result = sut.update() assert mock_api.update_ticket.called is False assert result == ('', 200)
def test_does_not_close_ticket_if_not_merged(): mock_api = YouTrackAPI("instance", "token") mock_api.update_ticket = MagicMock(return_value=(True, {})) sut = Ticket(closed_payload, mock_api, mock_user_dict) result = sut.update() assert mock_api.update_ticket.called is False assert result == ('', 200)
def test_closes_ticket(): mock_api = YouTrackAPI("instance", "token") mock_api.update_ticket = MagicMock(return_value=(True, {})) sut = Ticket(merged_payload, mock_api, mock_user_dict) result = sut.update() mock_api.update_ticket.assert_called_with( "RESIDE-11", commands=['state Ready to deploy', 'for Unassigned']) assert result == ('', 200)
def test_submits_ticket(): mock_api = YouTrackAPI("instance", "token") mock_api.update_ticket = MagicMock(return_value=(True, {})) sut = Ticket(requested_payload, mock_api, mock_user_dict) result = sut.update() mock_api.update_ticket.assert_called_with( "RESIDE-11", commands=['state Submitted', 'for oc'], comment="https://github.com/Codertocat/Hello-World/pull/2") assert result == ('', 200)
def test_update_reopens_ticket_if_not_approved(): mock_api = YouTrackAPI("instance", "token") mock_api.update_ticket = MagicMock(return_value=(True, {})) sut = Ticket(commented_payload, mock_api, mock_user_dict) result = sut.update() mock_api.update_ticket.assert_called_with( "RESIDE-11", commands=['state Reopened', 'for cc'], comment= "https://github.com/Codertocat/Hello-World/pull/2#pullrequestreview-237895671" ) assert result == ('', 200)
def test_ticket_does_not_exist(): mock_api = YouTrackAPI("instance", "token") requested_payload["pull_request"]["head"]["ref"] = "someotherbranch" sut = Ticket(requested_payload, mock_api, {}) assert sut.exists() is False requested_payload["pull_request"]["head"]["ref"] = "RESIDE-11"
def test_ticket_exists(): mock_api = YouTrackAPI("instance", "token") sut = Ticket(requested_payload, mock_api, {}) assert sut.exists() is True
def test_can_match_old_branch_names(): result = YouTrackAPI.get_issue_id("i637") assert result == "VIMC-637" result = YouTrackAPI.get_issue_id("i123_something") assert result == "VIMC-123"
def test_does_not_match_arbitrary_branch_names(): result = YouTrackAPI.get_issue_id("refactor") assert result is None