
from telemetry.page import page_test

class TimelineBasedPageTest(page_test.PageTest):
  """Page test that collects metrics with TimelineBasedMeasurement."""
  def __init__(self, tbm):
    super(TimelineBasedPageTest, self).__init__('RunPageInteractions')
    self._measurement = tbm

  @property
  def measurement(self):
    return self._measurement

  def WillNavigateToPage(self, page, tab):
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.WillRunUserStory(
        tracing_controller, page.GetSyntheticDelayCategories())

  def ValidateAndMeasurePage(self, page, tab, results):
    """Collect all possible metrics and added them to results."""
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.Measure(tracing_controller, results)

  def CleanUpAfterPage(self, page, tab):
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.DidRunUserStory(tracing_controller)


from telemetry.page import page_test

class TimelineBasedPageTest(page_test.PageTest):
  """Page test that collects metrics with TimelineBasedMeasurement."""
  def __init__(self, tbm):
    super(TimelineBasedPageTest, self).__init__()
    self._measurement = tbm

  @property
  def measurement(self):
    return self._measurement

  def WillNavigateToPage(self, page, tab):
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.WillRunUserStory(
        tracing_controller, page.GetSyntheticDelayCategories())

  def ValidateAndMeasurePage(self, page, tab, results):
    """Collect all possible metrics and added them to results."""
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.Measure(tracing_controller, results)

  def CleanUpAfterPage(self, page, tab):
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.DidRunUserStory(tracing_controller)

Fix browser restart in TimelineBasedPageTest
[Telemetry] Fix browser restart in TimelineBasedPageTest

The TimelineBasedPageTest constructor was passing in error a string where
its parent constructor expects a Boolean value for the
needs_browser_restart_after_each_page option.

BUG=504368

Review URL: https://codereview.chromium.org/1206323002

Cr-Commit-Position: 972c6d2dc6dd5efdad1377c0d224e03eb8f276f7@{#336188}

  
  from telemetry.page import page_test
  
  class TimelineBasedPageTest(page_test.PageTest):
    """Page test that collects metrics with TimelineBasedMeasurement."""
    def __init__(self, tbm):
-     super(TimelineBasedPageTest, self).__init__('RunPageInteractions')
+     super(TimelineBasedPageTest, self).__init__()
      self._measurement = tbm
  
    @property
    def measurement(self):
      return self._measurement
  
    def WillNavigateToPage(self, page, tab):
      tracing_controller = tab.browser.platform.tracing_controller
      self._measurement.WillRunUserStory(
          tracing_controller, page.GetSyntheticDelayCategories())
  
    def ValidateAndMeasurePage(self, page, tab, results):
      """Collect all possible metrics and added them to results."""
      tracing_controller = tab.browser.platform.tracing_controller
      self._measurement.Measure(tracing_controller, results)
  
    def CleanUpAfterPage(self, page, tab):
      tracing_controller = tab.browser.platform.tracing_controller
      self._measurement.DidRunUserStory(tracing_controller)
  
Fix browser restart in TimelineBasedPageTest
## Code Before:

from telemetry.page import page_test

class TimelineBasedPageTest(page_test.PageTest):
  """Page test that collects metrics with TimelineBasedMeasurement."""
  def __init__(self, tbm):
    super(TimelineBasedPageTest, self).__init__('RunPageInteractions')
    self._measurement = tbm

  @property
  def measurement(self):
    return self._measurement

  def WillNavigateToPage(self, page, tab):
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.WillRunUserStory(
        tracing_controller, page.GetSyntheticDelayCategories())

  def ValidateAndMeasurePage(self, page, tab, results):
    """Collect all possible metrics and added them to results."""
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.Measure(tracing_controller, results)

  def CleanUpAfterPage(self, page, tab):
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.DidRunUserStory(tracing_controller)

## Instruction:
Fix browser restart in TimelineBasedPageTest
## Code After:

from telemetry.page import page_test

class TimelineBasedPageTest(page_test.PageTest):
  """Page test that collects metrics with TimelineBasedMeasurement."""
  def __init__(self, tbm):
    super(TimelineBasedPageTest, self).__init__()
    self._measurement = tbm

  @property
  def measurement(self):
    return self._measurement

  def WillNavigateToPage(self, page, tab):
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.WillRunUserStory(
        tracing_controller, page.GetSyntheticDelayCategories())

  def ValidateAndMeasurePage(self, page, tab, results):
    """Collect all possible metrics and added them to results."""
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.Measure(tracing_controller, results)

  def CleanUpAfterPage(self, page, tab):
    tracing_controller = tab.browser.platform.tracing_controller
    self._measurement.DidRunUserStory(tracing_controller)
