| Index: appengine/findit/waterfall/test/send_notification_for_culprit_pipeline_test.py
|
| diff --git a/appengine/findit/waterfall/test/send_notification_for_culprit_pipeline_test.py b/appengine/findit/waterfall/test/send_notification_for_culprit_pipeline_test.py
|
| index 59233f3f349b3357dd48bc5778de2be1a08dbee5..ed2747543b15263962f608e76d32e9e8d5a66b84 100644
|
| --- a/appengine/findit/waterfall/test/send_notification_for_culprit_pipeline_test.py
|
| +++ b/appengine/findit/waterfall/test/send_notification_for_culprit_pipeline_test.py
|
| @@ -45,47 +45,28 @@ class SendNotificationForCulpritPipelineTest(wf_testcase.WaterfallTestCase):
|
| return _MOCKED_BUILD_END_TIME
|
| self.mock(build_util, 'GetBuildEndTime', Mocked_GetBuildEndTime)
|
|
|
| - def testShouldNotSendNotificationForSingleFailedBuild(self):
|
| - self.assertFalse(
|
| - send_notification_for_culprit_pipeline._ShouldSendNotification(
|
| - 'm', 'b1', 1, 'chromium', 'r1', 123, 2, False))
|
| - culprit = WfCulprit.Get('chromium', 'r1')
|
| - self.assertIsNotNone(culprit)
|
| - self.assertEqual([['m', 'b1', 1]], culprit.builds)
|
| -
|
| def testShouldNotSendNotificationForSameFailedBuild(self):
|
| - self.assertFalse(
|
| + criteria = {
|
| + 'time_limit_passed': False
|
| + }
|
| + self.assertTrue(
|
| send_notification_for_culprit_pipeline._ShouldSendNotification(
|
| - 'm', 'b2', 2, 'chromium', 'r2', 123, 2, False))
|
| + 'm', 'b2', 2, 'chromium', 'r2', 123, criteria))
|
| self.assertFalse(
|
| send_notification_for_culprit_pipeline._ShouldSendNotification(
|
| - 'm', 'b2', 2, 'chromium', 'r2', 123, 2, False))
|
| + 'm', 'b2', 2, 'chromium', 'r2', 123, criteria))
|
| culprit = WfCulprit.Get('chromium', 'r2')
|
| self.assertIsNotNone(culprit)
|
| self.assertEqual([['m', 'b2', 2]], culprit.builds)
|
| -
|
| - def testShouldSendNotificationForSecondFailedBuild(self):
|
| - self.assertFalse(
|
| - send_notification_for_culprit_pipeline._ShouldSendNotification(
|
| - 'm', 'b31', 31, 'chromium', 'r3', 123, 2, False))
|
| - self.assertTrue(
|
| - send_notification_for_culprit_pipeline._ShouldSendNotification(
|
| - 'm', 'b32', 32, 'chromium', 'r3', 123, 2, False))
|
| - culprit = WfCulprit.Get('chromium', 'r3')
|
| - self.assertIsNotNone(culprit)
|
| self.assertEqual(status.RUNNING, culprit.cr_notification_status)
|
| - self.assertEqual([['m', 'b31', 31], ['m', 'b32', 32]], culprit.builds)
|
| -
|
| - def testShouldNotSendNotificationForFirstFailedBuildCycle(self):
|
| - rietveld_requests = []
|
| - self._MockRietveld(rietveld_requests)
|
| - self._MockGitRepository('url')
|
| - self.MockUTCNow(_MOCKED_DATETIME_UTCNOW)
|
| - self._MockBuildEndTime()
|
|
|
| - pipeline = SendNotificationForCulpritPipeline()
|
| - self.assertFalse(pipeline.run('m', 'b4', 4, 'chromium', 'r4'))
|
| - self.assertEqual(0, len(rietveld_requests))
|
| + def testShouldNotSendNotificationIfTimePassed(self):
|
| + criteria = {
|
| + 'time_limit_passed': True
|
| + }
|
| + self.assertFalse(
|
| + send_notification_for_culprit_pipeline._ShouldSendNotification(
|
| + 'm', 'b2', 2, 'chromium', 'r2', 123, criteria))
|
|
|
| def testShouldNotSendNotificationIfNoCodeReview(self):
|
| rietveld_requests = []
|
| @@ -114,3 +95,17 @@ class SendNotificationForCulpritPipelineTest(wf_testcase.WaterfallTestCase):
|
| pipeline = SendNotificationForCulpritPipeline()
|
| self.assertTrue(pipeline.run('m', 'b62', 62, 'chromium', 'r6'))
|
| self.assertEqual(1, len(rietveld_requests))
|
| +
|
| + def testDontSendNotificationIfShouldNot(self):
|
| + rietveld_requests = []
|
| + self._MockRietveld(rietveld_requests)
|
| + self._MockGitRepository('url')
|
| + self.MockUTCNow(_MOCKED_DATETIME_UTCNOW)
|
| + self._MockBuildEndTime()
|
| + culprit = WfCulprit.Create('chromium', 'r7', 123)
|
| + culprit.builds.append(['m', 'b71', 71])
|
| + culprit.put()
|
| +
|
| + pipeline = SendNotificationForCulpritPipeline()
|
| + self.assertFalse(pipeline.run('m', 'b71', 71, 'chromium', 'r7'))
|
| + self.assertEqual(0, len(rietveld_requests))
|
|
|