def test_convert_message_to_string(): message = ['foo', 'bar'] requester = mock.MagicMock() requester.username = '******' pr = GitHubReporter(requester, 'test-repo') result = pr.convert_message_to_string(message) assert result == '* foo\n* bar\n'
def test_get_comments_cache(): return_data = {'foo': 'bar'} requester = mock.MagicMock() pr = GitHubReporter(requester, 'test-repo') pr._comments = return_data result = pr.get_comments('example.com') assert result == return_data assert not requester.get.called
def test_get_comments_no_cache(): return_data = {'foo': 'bar'} requester = mock.MagicMock() requester.get.return_value.json = lambda: return_data requester.get.return_value.status_code = 200 pr = GitHubReporter(requester, 'repo-name') result = pr.get_comments('example.com') assert result == return_data assert pr._comments == return_data requester.get.assert_called_with('example.com')
def test_clean_already_reported(): requester = mock.MagicMock() requester.username = '******' pr = GitHubReporter(requester, 'test-repo') comments = [{'path': 'foo.py', 'position': 2, 'body': 'Get that out', 'user': {'login': '******'}}, {'path': 'foo.py', 'position': 2, 'body': 'Different comment', 'user': {'login': '******'}}] message = ['Get that out', 'New message'] result = pr.clean_already_reported(comments, 'foo.py', 2, message) assert result == ['New message']
def test_clean_already_reported(): requester = mock.MagicMock() requester.username = '******' pr = GitHubReporter(requester) comments = [{ 'path': 'foo.py', 'position': 2, 'body': 'Get that out', 'user': { 'login': '******' } }, { 'path': 'foo.py', 'position': 2, 'body': 'Different comment', 'user': { 'login': '******' } }] message = ['Get that out', 'New message'] result = pr.clean_already_reported(comments, 'foo.py', 2, message) assert result == ['New message']
def test_get_comments_error(): requester = mock.MagicMock() requester.get.return_value.status_code = 400 pr = GitHubReporter(requester, 'test-repo') result = pr.get_comments('example.com') assert len(result) == 0