Exemple #1
0
def GetFlake(luci_project, original_step_name, original_test_name, master_name,
             builder_name, build_number):
    """Returns an existing Flake or creates one as needed.

  Args:
    luci_project (str): The project being analyzed, e.g. 'chromium'.
    original_step_name (str): The original step name which may contain hardware
      information and 'with(out) patch' etc. suffixes.
    original_test_name (str): The original test name.
    master_name (str): Master name of the build of the step.
    builder_name (str): Builder name of the build of the step.
    build_number (int): Build number of the build of the step.
  """
    normalized_step_name = Flake.LegacyNormalizeStepName(
        original_step_name, master_name, builder_name, build_number)
    normalized_test_name = Flake.NormalizeTestName(original_test_name,
                                                   original_step_name)
    flake = Flake.Get(luci_project, normalized_step_name, normalized_test_name)

    if not flake:  # pragma: no branch
        label = Flake.GetTestLabelName(original_test_name, original_step_name)
        flake = Flake.Create(luci_project, normalized_step_name,
                             normalized_test_name, label)
        flake.put()

    return flake
Exemple #2
0
 def testLegacyNormalizeStepName(self, mocked_get_isolate_target_name,
                                 mocked_get_canonical_step_name):
     self.assertEqual(
         'isolate_target_name',
         Flake.LegacyNormalizeStepName(
             step_name='step_name (with patch) on Android',
             master_name='m',
             builder_name='b',
             build_number=200))
Exemple #3
0
 def testLegacyNormalizeStepNameForWebkitLayoutTests(
         self, mocked_get_isolate_target_name,
         mocked_get_canonical_step_name):
     self.assertEqual(
         'webkit_layout_tests',
         Flake.LegacyNormalizeStepName(
             step_name='site_per_process_webkit_layout_tests (with patch)',
             master_name='m',
             builder_name='b',
             build_number=200))
     # Assertions have never worked properly because we were using mock 1.0.1.
     # After rolling to mock 2.0.0, which fixes assertions, these assertions now
     # fail. https://crbug.com/947753.
     # mocked_get_isolate_target_name.assert_called_once(
     #     master_name='m',
     #     builder_name='b',
     #     build_number=200,
     #     step_name='step_name (with patch) on Android')
     mocked_get_canonical_step_name.assert_not_called()
Exemple #4
0
 def GetStepName(self):
     return Flake.LegacyNormalizeStepName(
         step_name=self._analysis.step_name,
         master_name=self._analysis.master_name,
         builder_name=self._analysis.builder_name,
         build_number=self._analysis.build_number)