15f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)# Copyright 2014 The Chromium Authors. All rights reserved. 25f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be 35f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)# found in the LICENSE file. 45f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 55f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 65f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)class ProgressReporter(object): 75f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) """A class that reports progress of a benchmark. 85f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 95f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) The reporter produces output whenever a significant event happens 105f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) during the progress of a benchmark, including (but not limited to): 115f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) when a page run is started, when a page run finished, any failures 125f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) during a page run. 135f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 145f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) The default implementation outputs nothing. 155f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) """ 165f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 175f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) def DidAddValue(self, value): 185f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) pass 195f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 205f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) def WillRunPage(self, page_test_results): 215f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) pass 225f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 235f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) def DidRunPage(self, page_test_results): 245f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) pass 255f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 265f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) def WillAttemptPageRun(self, page_test_results, attempt_count, max_attempts): 275f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) """ 285f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) Args: 295f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) attempt_count: The current attempt number, start at 1 305f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) (attempt_count == 1 for the first attempt, 2 for second 315f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) attempt, and so on). 325f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) max_attempts: Maximum number of page run attempts before failing. 335f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) """ 345f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) pass 355f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) 365f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) def DidFinishAllTests(self, page_test_results): 375f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles) pass 38