Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(215)

Unified Diff: tools/telemetry/telemetry/page.py

Issue 12278015: [Telemetry] Reorganize everything. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Re-add shebangs. Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « tools/telemetry/telemetry/options_for_unittests.py ('k') | tools/telemetry/telemetry/page/__init__.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/telemetry/telemetry/page.py
diff --git a/tools/telemetry/telemetry/page.py b/tools/telemetry/telemetry/page.py
deleted file mode 100644
index 551f6d832a489c5815e80daf062a52e2f9eb0c60..0000000000000000000000000000000000000000
--- a/tools/telemetry/telemetry/page.py
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright (c) 2012 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-import os
-import re
-import time
-import urlparse
-
-from telemetry import util
-
-class Page(object):
- def __init__(self, url, page_set, attributes=None, base_dir=None):
- parsed_url = urlparse.urlparse(url)
- if not parsed_url.scheme:
- abspath = os.path.abspath(os.path.join(base_dir, parsed_url.path))
- if os.path.exists(abspath):
- url = 'file://%s' % os.path.abspath(os.path.join(base_dir, url))
- else:
- raise Exception('URLs must be fully qualified: %s' % url)
- self.url = url
- self.page_set = page_set
- self.base_dir = base_dir
- self.credentials = None
- self.disabled = False
- self.wait_time_after_navigate = 2
-
- if attributes:
- for k, v in attributes.iteritems():
- setattr(self, k, v)
-
- # NOTE: This assumes the page_set file uses 'file:///' instead of 'file://',
- # otherwise the '/' will be missing between page_set.base_dir and
- # parsed_url.path.
- @property
- def url_base_dir_and_file(self):
- parsed_url = urlparse.urlparse(self.url)
-
- # Don't use os.path.join otherwise netloc and path can't point to relative
- # directories.
- assert parsed_url.path[0] == '/'
-
- path = self.base_dir + parsed_url.netloc + parsed_url.path
-
- if hasattr(self, 'url_base_dir'):
- parsed_url = urlparse.urlparse(self.url_base_dir)
- base_path = self.base_dir + parsed_url.netloc + parsed_url.path
- return (base_path, path.replace(base_path, ''))
-
- return os.path.split(path)
-
- # A version of this page's URL that's safe to use as a filename.
- @property
- def url_as_file_safe_name(self):
- # Just replace all special characters in the url with underscore.
- return re.sub('[^a-zA-Z0-9]', '_', self.url)
-
- @property
- def display_url(self):
- if self.url.startswith('file://'):
- return os.path.split(self.url)[1]
- return re.sub('https?://', '', self.url)
-
- @property
- def archive_path(self):
- return self.page_set.WprFilePathForPage(self)
-
- def __str__(self):
- return self.url
-
- def WaitToLoad(self, tab, timeout, poll_interval=0.1):
- Page.WaitForPageToLoad(self, tab, timeout, poll_interval)
-
- # TODO(dtu): Remove this method when no page sets use a click interaction
- # with a wait condition. crbug.com/168431
- @staticmethod
- def WaitForPageToLoad(obj, tab, timeout, poll_interval=0.1):
- """Waits for various wait conditions present in obj."""
- if hasattr(obj, 'post_navigate_javascript_to_execute'):
- tab.EvaluateJavaScript(obj.post_navigate_javascript_to_execute)
-
- if hasattr(obj, 'wait_seconds'):
- time.sleep(obj.wait_seconds)
- if hasattr(obj, 'wait_for_element_with_text'):
- callback_code = 'function(element) { return element != null; }'
- util.WaitFor(
- lambda: util.FindElementAndPerformAction(
- tab, obj.wait_for_element_with_text, callback_code),
- timeout, poll_interval)
- if hasattr(obj, 'wait_for_element_with_selector'):
- util.WaitFor(lambda: tab.EvaluateJavaScript(
- 'document.querySelector(\'' + obj.wait_for_element_with_selector +
- '\') != null'), timeout, poll_interval)
- if hasattr(obj, 'wait_for_javascript_expression'):
- util.WaitFor(
- lambda: tab.EvaluateJavaScript(obj.wait_for_javascript_expression),
- timeout, poll_interval)
« no previous file with comments | « tools/telemetry/telemetry/options_for_unittests.py ('k') | tools/telemetry/telemetry/page/__init__.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698