| Index: appengine/findit/waterfall/flake/test/recursive_flake_pipeline_test.py
|
| diff --git a/appengine/findit/waterfall/flake/test/recursive_flake_pipeline_test.py b/appengine/findit/waterfall/flake/test/recursive_flake_pipeline_test.py
|
| index 7d7f943eaab4d345d52f9ed71f071bf00c0f6720..50d918ace7907be398d3503148f242640c588851 100644
|
| --- a/appengine/findit/waterfall/flake/test/recursive_flake_pipeline_test.py
|
| +++ b/appengine/findit/waterfall/flake/test/recursive_flake_pipeline_test.py
|
| @@ -5,8 +5,8 @@
|
| from common import constants
|
| from common.pipeline_wrapper import pipeline_handlers
|
| from model import analysis_status
|
| -from model.flake.master_flake_analysis import MasterFlakeAnalysis
|
| from model.flake.flake_swarming_task import FlakeSwarmingTask
|
| +from model.flake.master_flake_analysis import MasterFlakeAnalysis
|
| from waterfall.flake import recursive_flake_pipeline
|
| from waterfall.flake.recursive_flake_pipeline import get_next_run
|
| from waterfall.flake.recursive_flake_pipeline import NextBuildNumberPipeline
|
| @@ -24,7 +24,7 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| analysis = MasterFlakeAnalysis.Create(
|
| master_name, builder_name, build_number, step_name, test_name)
|
| analysis.status = status
|
| - analysis.put()
|
| + analysis.Save()
|
|
|
| def _CreateAndSaveFlakeSwarmingTask(
|
| self, master_name, builder_name, build_number,
|
| @@ -126,9 +126,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.COMPLETED
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(.08)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(.08)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -167,9 +167,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.COMPLETED
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(0)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(0)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -209,9 +209,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.COMPLETED
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(0)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(0)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -251,9 +251,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.COMPLETED
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(.50)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(.50)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -264,7 +264,6 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| flakiness_algorithm_results_dict)
|
| self.assertEquals(flakiness_algorithm_results_dict['flaked_out'], True)
|
|
|
| -
|
| def testNextBuildPipelineForNewRecursionLessThanLastBuildNumber(self):
|
| master_name = 'm'
|
| builder_name = 'b'
|
| @@ -293,9 +292,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.COMPLETED
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(.50)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(.50)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -340,9 +339,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.ERROR
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(.50)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(.50)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -386,9 +385,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.COMPLETED
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(.50)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(.50)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -414,9 +413,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.PENDING
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(1)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(1)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -447,9 +446,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.PENDING
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(.5)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(.5)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -480,9 +479,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.PENDING
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(.5)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(.5)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -510,9 +509,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.PENDING
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(.5)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(.5)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -541,9 +540,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.PENDING
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(1)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(1)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -562,7 +561,6 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| self.assertEqual(next_run, False)
|
| self.assertEqual(analysis.suspected_flake_build_number, 101)
|
|
|
| -
|
| def testSequentialDidntFindBorderStable(self):
|
| master_name = 'm'
|
| builder_name = 'b'
|
| @@ -573,9 +571,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.PENDING
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(1)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(1)
|
| analysis.build_numbers.append(100)
|
| analysis.put()
|
|
|
| @@ -623,9 +621,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.COMPLETED
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(master_name, builder_name,
|
| - build_number, step_name, test_name)
|
| - analysis.success_rates.append(1)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, build_number, step_name, test_name)
|
| + analysis.pass_rates.append(1)
|
| analysis.build_numbers.append(50)
|
| analysis.put()
|
|
|
| @@ -638,7 +636,7 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
|
|
| def testNextBuildWhenTestNotExistingAfterStableInARow(self):
|
| master = MasterFlakeAnalysis.Create('m', 'b', 100, 's', 't')
|
| - master.success_rates = [0.8, 1.0, 1.0, -1]
|
| + master.pass_rates = [0.8, 1.0, 1.0, -1]
|
| master.build_numbers = [100, 80, 70, 60]
|
| flakiness_algorithm_results_dict = {
|
| 'flakes_in_a_row': 0,
|
| @@ -662,7 +660,7 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
|
|
| def testNextBuildWhenTestNotExistingAfterFlakeInARow(self):
|
| master = MasterFlakeAnalysis.Create('m', 'b', 100, 's', 't')
|
| - master.success_rates = [0.8, 0.7, 0.75, -1]
|
| + master.pass_rates = [0.8, 0.7, 0.75, -1]
|
| master.build_numbers = [100, 80, 70, 60]
|
| flakiness_algorithm_results_dict = {
|
| 'flakes_in_a_row': 3,
|
| @@ -712,10 +710,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.COMPLETED
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(
|
| - master_name, builder_name,
|
| - master_build_number, step_name, test_name)
|
| - analysis.success_rates = [1.0, 1.0, 1.0, -1]
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, master_build_number, step_name, test_name)
|
| + analysis.pass_rates = [1.0, 1.0, 1.0, -1]
|
| analysis.build_numbers = [100, 80, 70, 60]
|
| analysis.put()
|
|
|
| @@ -725,9 +722,8 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_build_number, build_number, step_name, test_name,
|
| test_result_future, queue_name, flakiness_algorithm_results_dict)
|
|
|
| - analysis = MasterFlakeAnalysis.Get(
|
| - master_name, builder_name,
|
| - master_build_number, step_name, test_name)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, master_build_number, step_name, test_name)
|
| self.assertEqual(analysis_status.COMPLETED, analysis.status)
|
|
|
| def testNextBuildNumberIsSmallerThanLastBuildNumber(self):
|
| @@ -758,10 +754,9 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_name, builder_name, build_number, step_name,
|
| test_name, status=analysis_status.COMPLETED
|
| )
|
| - analysis = MasterFlakeAnalysis.Get(
|
| - master_name, builder_name,
|
| - master_build_number, step_name, test_name)
|
| - analysis.success_rates = [1.0, 1.0, 1.0, 1.0]
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, master_build_number, step_name, test_name)
|
| + analysis.pass_rates = [1.0, 1.0, 1.0, 1.0]
|
| analysis.build_numbers = [100, 80, 70, 60]
|
| analysis.put()
|
|
|
| @@ -771,7 +766,6 @@ class RecursiveFlakePipelineTest(wf_testcase.WaterfallTestCase):
|
| master_build_number, build_number, step_name, test_name,
|
| test_result_future, queue_name, flakiness_algorithm_results_dict)
|
|
|
| - analysis = MasterFlakeAnalysis.Get(
|
| - master_name, builder_name,
|
| - master_build_number, step_name, test_name)
|
| + analysis = MasterFlakeAnalysis.GetVersion(
|
| + master_name, builder_name, master_build_number, step_name, test_name)
|
| self.assertEqual(analysis_status.COMPLETED, analysis.status)
|
|
|