| Index: tools/telemetry/telemetry/page_runner.py
|
| diff --git a/tools/telemetry/telemetry/page_runner.py b/tools/telemetry/telemetry/page_runner.py
|
| index 80f3a3866f2c84a0149c930572984216a153144a..4faea005f4ae247281e5de987f3bf99e9bfd47ff 100644
|
| --- a/tools/telemetry/telemetry/page_runner.py
|
| +++ b/tools/telemetry/telemetry/page_runner.py
|
| @@ -3,6 +3,7 @@
|
| # found in the LICENSE file.
|
| import logging
|
| import os
|
| +import re
|
| import time
|
| import traceback
|
| import urlparse
|
| @@ -34,7 +35,7 @@ class _RunState(object):
|
| self.browser.Close()
|
| self.browser = None
|
|
|
| -def _ShufflePageSet(page_set, options):
|
| +def _ShuffleAndFilterPageSet(page_set, options):
|
| if options.test_shuffle_order_file and not options.test_shuffle:
|
| raise Exception('--test-shuffle-order-file requires --test-shuffle.')
|
|
|
| @@ -42,6 +43,13 @@ def _ShufflePageSet(page_set, options):
|
| return page_set.ReorderPageSet(options.test_shuffle_order_file)
|
|
|
| pages = page_set.pages[:]
|
| + if options.page_filter:
|
| + try:
|
| + page_regex = re.compile(options.page_filter)
|
| + except re.error:
|
| + raise Exception('--page-filter: invalid regex')
|
| + pages = [page for page in pages if page_regex.search(page.url)]
|
| +
|
| if options.test_shuffle:
|
| random.Random().shuffle(pages)
|
| return [page
|
| @@ -104,7 +112,7 @@ http://goto/read-src-internal, or create a new archive using record_wpr.
|
| raise Exception('Trace directory isn\'t empty: %s' % options.trace_dir)
|
|
|
| # Reorder page set based on options.
|
| - pages = _ShufflePageSet(self.page_set, options)
|
| + pages = _ShuffleAndFilterPageSet(self.page_set, options)
|
|
|
| state = _RunState()
|
| try:
|
|
|