Chromium Code Reviews| Index: appengine/findit/handlers/test/triage_analysis_test.py |
| diff --git a/appengine/findit/handlers/test/triage_analysis_test.py b/appengine/findit/handlers/test/triage_analysis_test.py |
| index cfb0ccbe8633dbfac65d2a865101af940be57930..e4729cf718cb286fbacc00ad3b21a3be11cab1c7 100644 |
| --- a/appengine/findit/handlers/test/triage_analysis_test.py |
| +++ b/appengine/findit/handlers/test/triage_analysis_test.py |
| @@ -5,10 +5,8 @@ |
| from datetime import datetime |
| from datetime import timedelta |
| -from google.appengine.ext import ndb |
| -import webapp2 |
| - |
| from testing_utils import testing |
|
lijeffrey
2016/06/27 20:38:22
I think you can leave this one where it was even t
josiahk
2016/06/28 22:59:23
Kept per conversation.
|
| +import webapp2 |
| from handlers import triage_analysis |
| from model import analysis_status |
| @@ -136,7 +134,9 @@ class TriageAnalysisTest(testing.AppengineTestCase): |
| '/triage-analysis', |
| params={'url': build_url, 'correct': True, 'format': 'json'}) |
| self.assertEquals(200, response.status_int) |
| - self.assertEquals({'success': True}, response.json_body) |
| + self.assertEquals( |
| + {'success': True, 'num_duplicate_analyses': 0}, |
|
lijeffrey
2016/06/27 20:38:22
nit: put each field on a new line, same with the o
josiahk
2016/06/28 22:59:23
Done! Thanks!
|
| + response.json_body) |
| def testIncompleteTriage(self): |
| build_url = buildbot.CreateBuildUrl( |
| @@ -145,7 +145,20 @@ class TriageAnalysisTest(testing.AppengineTestCase): |
| '/triage-analysis', |
| params={'url': build_url, 'correct': True, 'format': 'json'}) |
| self.assertEquals(200, response.status_int) |
| - self.assertEquals({'success': False}, response.json_body) |
| + self.assertEquals( |
| + {'success': False, 'num_duplicate_analyses': 0}, |
| + response.json_body) |
| + |
| + def testDuplicatePropertyWorksWhenNotDuplicate(self): |
|
lijeffrey
2016/06/27 20:38:22
nit: you can name this
testDuplicatePropertyNoDup
josiahk
2016/06/28 22:59:23
Thanks!
|
| + analysis = WfAnalysis.Get( |
| + self.master_name, self.builder_name, self.build_number_found) |
| + self.assertFalse(analysis.is_duplicate) |
| + |
| + def testDuplicatePropertyWorksWhenDuplicate(self): |
| + analysis = WfAnalysis.Get( |
| + self.master_name, self.builder_name, self.build_number_found) |
| + analysis.result_status = result_status.FOUND_CORRECT_DUPLICATE |
| + self.assertTrue(analysis.is_duplicate) |
| def testAnalysesMatch(self): |
| analysis_with_empty_failures = WfAnalysis.Create( |
| @@ -364,11 +377,7 @@ class TriageAnalysisTest(testing.AppengineTestCase): |
| analysis.result = { |
| 'failures': [ |
| { |
| - 'suspected_cls': [ |
| - { |
| - 'revision': 'abc', |
| - } |
| - ], |
| + 'suspected_cls': self.suspected_cls, |
| 'step_name': 'step_4', |
| } |
| ] |
| @@ -376,6 +385,7 @@ class TriageAnalysisTest(testing.AppengineTestCase): |
| analysis.result_status = result_status.FOUND_UNTRIAGED |
| analysis.build_start_time = build_start_time |
| analysis.status = analysis_status.COMPLETED |
| + analysis.suspected_cls = self.suspected_cls |
| analysis.put() |
| return analysis |
| @@ -447,7 +457,7 @@ class TriageAnalysisTest(testing.AppengineTestCase): |
| self.assertEquals( |
| len(triage_analysis._GetDuplicateAnalyses(analysis_original)), 0) |
| - def testTriageDuplicateResults(self): |
| + def testTriageDuplicateResultsFoundCorrectDuplicate(self): |
| # Two days ago, UTC Noon. |
| original_time = (datetime.utcnow() - timedelta(days=2)).replace( |
| hour=12, minute=0, second=0, microsecond=0) |
| @@ -456,10 +466,25 @@ class TriageAnalysisTest(testing.AppengineTestCase): |
| # Create another analysis at the same time (also two days ago). |
| self._createAnalysis(311, original_time) |
| - triage_analysis._TriageDuplicateResults(analysis_original, True) |
| + triage_analysis._TriageDuplicateResults(analysis_original, is_correct=True) |
| second_analysis = WfAnalysis.Get(self.master_name, self.builder_name, 311) |
| - self.assertEquals(result_status.NOT_FOUND_CORRECT, |
| + self.assertEquals(result_status.FOUND_CORRECT_DUPLICATE, |
| second_analysis.result_status) |
| + def testTriageDuplicateResultsFoundIncorrectDuplicate(self): |
| + # Two days ago, UTC Noon. |
| + original_time = (datetime.utcnow() - timedelta(days=2)).replace( |
| + hour=12, minute=0, second=0, microsecond=0) |
| + analysis_original = self._createAnalysis(312, original_time) |
| + |
| + # Create another analysis at the same time (also two days ago). |
| + self._createAnalysis(313, original_time) |
|
lijeffrey
2016/06/27 20:38:22
why not make the second analysis a slightly later
josiahk
2016/06/28 22:59:23
Done!
|
| + |
| + triage_analysis._TriageDuplicateResults(analysis_original, is_correct=False) |
| + |
| + second_analysis = WfAnalysis.Get(self.master_name, self.builder_name, 313) |
| + |
| + self.assertEquals(result_status.FOUND_INCORRECT_DUPLICATE, |
| + second_analysis.result_status) |