From 9be8bd2248e7881889b80da543ceb9987e1db887 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Mar 20 2015 14:08:44 +0000 Subject: Add unit-tests for progit.lib.remove_issue_dependency --- diff --git a/tests/test_progit_lib.py b/tests/test_progit_lib.py index a7ed697..e31c39c 100644 --- a/tests/test_progit_lib.py +++ b/tests/test_progit_lib.py @@ -1251,6 +1251,65 @@ class ProgitLibtests(tests.Modeltests): ) self.assertEqual(len(prs), 1) + @patch('progit.lib.git.update_git') + @patch('progit.lib.notify.send_email') + def test_remove_issue_dependency(self, p_send_email, p_ugt): + """ Test remove_issue_dependency of progit.lib. """ + p_send_email.return_value = True + p_ugt.return_value = True + + self.test_add_issue_dependency() + repo = progit.lib.get_project(self.session, 'test') + issue = progit.lib.search_issues(self.session, repo, issueid=1) + issue_blocked = progit.lib.search_issues( + self.session, repo, issueid=2) + + # Before + self.assertEqual(len(issue.parents), 1) + self.assertEqual(issue.parents[0].id, 2) + self.assertEqual(len(issue.children), 0) + self.assertEqual(issue.children, []) + + self.assertEqual(len(issue_blocked.parents), 0) + self.assertEqual(issue_blocked.parents, []) + self.assertEqual(len(issue_blocked.children), 1) + self.assertEqual(issue_blocked.children[0].id, 1) + + self.assertRaises( + progit.exceptions.ProgitException, + progit.lib.remove_issue_dependency, + session=self.session, + issue=issue, + issue_blocked=issue, + user='pingou', + ticketfolder=None) + + # Wrong order of issues + msg = progit.lib.remove_issue_dependency( + session=self.session, + issue=issue, + issue_blocked=issue_blocked, + user='pingou', + ticketfolder=None) + self.session.commit() + self.assertEqual(msg, None) + + # Drop deps + msg = progit.lib.remove_issue_dependency( + session=self.session, + issue=issue_blocked, + issue_blocked=issue, + user='pingou', + ticketfolder=None) + self.session.commit() + self.assertEqual(msg, 'Dependency removed') + + # After + self.assertEqual(issue.parents, []) + self.assertEqual(issue.children, []) + self.assertEqual(issue_blocked.parents, []) + self.assertEqual(issue_blocked.children, []) + if __name__ == '__main__': SUITE = unittest.TestLoader().loadTestsFromTestCase(ProgitLibtests)