| OLD | NEW |
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 from datetime import datetime | 5 from datetime import datetime |
| 6 | 6 |
| 7 import unittest | 7 import unittest |
| 8 | 8 |
| 9 from common.waterfall import failure_type |
| 9 from model.wf_analysis import WfAnalysis | 10 from model.wf_analysis import WfAnalysis |
| 10 from model import analysis_status | 11 from model import analysis_status |
| 11 from model import result_status | 12 from model import result_status |
| 12 | 13 |
| 13 | 14 |
| 14 class WfAnalysisTest(unittest.TestCase): | 15 class WfAnalysisTest(unittest.TestCase): |
| 15 def testWfAnalysisStatusIsCompleted(self): | 16 def testWfAnalysisStatusIsCompleted(self): |
| 16 for status in (analysis_status.COMPLETED, analysis_status.ERROR): | 17 for status in (analysis_status.COMPLETED, analysis_status.ERROR): |
| 17 analysis = WfAnalysis.Create('m', 'b', 123) | 18 analysis = WfAnalysis.Create('m', 'b', 123) |
| 18 analysis.status = status | 19 analysis.status = status |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 105 | 106 |
| 106 def testWfAnalysisHasIncorrectResult(self): | 107 def testWfAnalysisHasIncorrectResult(self): |
| 107 for status in ( | 108 for status in ( |
| 108 result_status.FOUND_INCORRECT, | 109 result_status.FOUND_INCORRECT, |
| 109 result_status.NOT_FOUND_INCORRECT, | 110 result_status.NOT_FOUND_INCORRECT, |
| 110 result_status.FOUND_INCORRECT_DUPLICATE): | 111 result_status.FOUND_INCORRECT_DUPLICATE): |
| 111 analysis = WfAnalysis.Create('m', 'b', 123) | 112 analysis = WfAnalysis.Create('m', 'b', 123) |
| 112 analysis.status = analysis_status.COMPLETED | 113 analysis.status = analysis_status.COMPLETED |
| 113 analysis.result_status = status | 114 analysis.result_status = status |
| 114 self.assertFalse(analysis.correct) | 115 self.assertFalse(analysis.correct) |
| 116 |
| 117 def testFailureTypeForNoneLegacyData(self): |
| 118 analysis = WfAnalysis.Create('m', 'b', 123) |
| 119 analysis.build_failure_type = failure_type.COMPILE |
| 120 analysis.result = None |
| 121 self.assertEqual(failure_type.COMPILE, analysis.failure_type) |
| 122 |
| 123 def testFailureTypeForLegacyDataWithoutResult(self): |
| 124 analysis = WfAnalysis.Create('m', 'b', 123) |
| 125 analysis.result = None |
| 126 self.assertEqual(failure_type.UNKNOWN, analysis.failure_type) |
| 127 |
| 128 def testFailureTypeForLegacyDataWithoutFailedSteps(self): |
| 129 analysis = WfAnalysis.Create('m', 'b', 123) |
| 130 analysis.result = {'failures': []} |
| 131 self.assertEqual(failure_type.UNKNOWN, analysis.failure_type) |
| 132 |
| 133 def testFailureTypeForLegacyDataWithFailedCompileStep(self): |
| 134 analysis = WfAnalysis.Create('m', 'b', 123) |
| 135 analysis.result = {'failures': [{'step_name': 'compile'}]} |
| 136 self.assertEqual(failure_type.COMPILE, analysis.failure_type) |
| 137 |
| 138 def testFailureTypeForLegacyDataWithFailedTestStep(self): |
| 139 analysis = WfAnalysis.Create('m', 'b', 123) |
| 140 analysis.result = {'failures': [{'step_name': 'browser_tests'}]} |
| 141 self.assertEqual(failure_type.TEST, analysis.failure_type) |
| OLD | NEW |