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

Unified Diff: chrome/test/functional/prefetch.py

Issue 222873002: Remove pyauto tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: sync Created 6 years, 9 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 | « chrome/test/functional/perf_endure.py ('k') | chrome/test/functional/prefs.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/functional/prefetch.py
===================================================================
--- chrome/test/functional/prefetch.py (revision 261231)
+++ chrome/test/functional/prefetch.py (working copy)
@@ -1,141 +0,0 @@
-#!/usr/bin/env python
-# Copyright (c) 2011 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.
-
-"""This functional test spawns a web server, and runs chrome to point
-at that web server.
-
-The content served contains prefetch requests, and the tests assert that the
-webserver logs reflect that.
-
-Run like any functional test:
-$ python chrome/test/functional/prefetch.py
-in a repo with a built pyautolib
-
-The import of multiprocessing implies python 2.6 is required
-"""
-
-import os
-import time
-import multiprocessing
-import Queue
-import string
-from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer
-
-import pyauto_functional # Must be imported before pyauto
-import pyauto
-
-# this class handles IPC retrieving server "logs" from our integral
-# server. Each test should clear() the log, and then run asserts on
-# the retrieval list.
-
-# at startup, the server puts an int in the queue which is its port,
-# we store that for subsequent tests
-
-class ServerLog:
- def clear(self):
- self.log = {}
-
- def __init__(self,queue):
- self.clear()
- self.port = None
- self.queue = queue
-
- def _readQueue(self):
- try:
- while True:
- queueval = self.queue.get(False)
- if isinstance(queueval,int):
- self.port = queueval
- else:
- self.log[queueval] = True
- except Queue.Empty:
- return
-
- def getPort(self):
- if not self.port:
- self._readQueue()
- return self.port
-
- def isRetrieved(self,path):
- self._readQueue()
- try:
- return self.log[path]
- except KeyError:
- return None
-
-#
-# The next few classes run a simple web server that returns log information
-# via a multiprocessing.Queue.
-#
-class AbstractPrefetchServerHandler(BaseHTTPRequestHandler):
- content = {
- "prefetch-origin.html":
- (200, """<html><head>
-<link rel="prefetch" href="static-prefetch-target.html">
-<script type="text/javascript">
-function changeParagraph()
-{
- var newPara = document.createElement("p");
- newPara.innerHTML =
- "<link rel=\\"prefetch\\" href=\\"dynamic-prefetch-target.html\\">" +
- "<p>This paragraph contains a dynamic link prefetch. " +
- "The target of this prefetch is " +
- "<a href=\\"dynamic-prefetch-target.html\\">this document.</a>";
- var para = document.getElementById("p1");
- document.body.insertBefore(newPara,para);
-}
-</script>
-</head>
-<body onload="changeParagraph()">
-<p id="p1">This is a document that contains a link prefetch. The target of
-that prefetch is <a href="static-prefetch-target.html">this document.</a>
-</body>"""),
- "static-prefetch-target.html":
- (200, "<html><head></head><body>empty</body>"),
- "dynamic-prefetch-target.html":
- (200, "<html><head></head><body>empty</body>")}
-
- def do_GET(self):
- self.queue.put(self.path[1:])
- try:
- response_code, response = self.content[self.path[1:]]
- self.send_response(response_code)
- self.end_headers()
- self.wfile.write(response)
- except KeyError:
- self.send_response(404)
- self.end_headers()
-
-def run_web_server(queue_arg):
- class PrefetchServerHandler(AbstractPrefetchServerHandler):
- queue = queue_arg
- server = HTTPServer(('',0), PrefetchServerHandler)
- queue.put(server.server_port)
- server.serve_forever()
-
-#
-# Here's the test itself
-#
-queue = multiprocessing.Queue()
-server_log = ServerLog(queue)
-
-class PrefetchTest(pyauto.PyUITest):
- """Testcase for Prefetching"""
- def testBasic(self):
- server_log.clear()
- url = "http://localhost:%d/prefetch-origin.html" % server_log.getPort()
- self.NavigateToURL(url)
- self.assertEqual(True, server_log.isRetrieved("prefetch-origin.html"))
- time.sleep(0.1) # required since prefetches occur after onload
- self.assertEqual(True, server_log.isRetrieved(
- "static-prefetch-target.html"))
- self.assertEqual(True, server_log.isRetrieved(
- "dynamic-prefetch-target.html"))
-
-if __name__ == '__main__':
- web_server = multiprocessing.Process(target=run_web_server,args=(queue,))
- web_server.daemon = True
- web_server.start()
- pyauto_functional.Main()
« no previous file with comments | « chrome/test/functional/perf_endure.py ('k') | chrome/test/functional/prefs.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698