示例#1
0
def _GetUpdatedAnalysisResult(analysis, flaky_failures):
    if not analysis or not analysis.result or not analysis.result.get(
            'failures'):
        return {}, False

    return test_failure_analysis.UpdateAnalysisResultWithFlakeInfo(
        analysis.result, flaky_failures)
示例#2
0
  def testUpdateAnalysisResultAllFlaky(self):
    analysis_result = {
        'failures': [{
            'tests': [
                {
                    'last_pass': 123,
                    'first_failure': 123,
                    'suspected_cls': [],
                    'test_name': 'TestSuite1.test1'
                },
                {
                    'last_pass': 123,
                    'first_failure': 123,
                    'suspected_cls': [],
                    'test_name': 'TestSuite1.test2'
                },
            ],
            'step_name':
                'browser_tests on platform'
        }]
    }

    flaky_failures = {
        'browser_tests on platform': ['TestSuite1.test1', 'TestSuite1.test2']
    }

    updated_result, all_flaked = (
        test_failure_analysis.UpdateAnalysisResultWithFlakeInfo(
            analysis_result, flaky_failures))

    expected_result = {
        'failures': [{
            'tests': [
                {
                    'last_pass': 123,
                    'first_failure': 123,
                    'suspected_cls': [],
                    'test_name': 'TestSuite1.test1',
                    'flaky': True
                },
                {
                    'last_pass': 123,
                    'first_failure': 123,
                    'suspected_cls': [],
                    'test_name': 'TestSuite1.test2',
                    'flaky': True
                },
            ],
            'step_name':
                'browser_tests on platform',
            'flaky':
                True
        }]
    }

    self.assertTrue(all_flaked)
    self.assertEqual(expected_result, updated_result)
示例#3
0
  def testUpdateAnalysisResultOnlyStep(self):
    analysis_result = {'failures': [{'step_name': 'another_step1'}]}

    flaky_failures = {
        'browser_tests on platform': ['TestSuite1.test1', 'TestSuite1.test2']
    }

    _, all_flaked = (
        test_failure_analysis.UpdateAnalysisResultWithFlakeInfo(
            analysis_result, flaky_failures))

    self.assertFalse(all_flaked)