Index: chrome/test/chromedriver/test/run_py_tests.py |
diff --git a/chrome/test/chromedriver/test/run_py_tests.py b/chrome/test/chromedriver/test/run_py_tests.py |
index 9240b18866fb9cd9178811f731873269b0bcbea6..bf73de87cacb61f890b072f159a86aa8dd8ac85f 100755 |
--- a/chrome/test/chromedriver/test/run_py_tests.py |
+++ b/chrome/test/chromedriver/test/run_py_tests.py |
@@ -54,6 +54,7 @@ _NEGATIVE_FILTER = [ |
'ChromeDriverTest.testEmulateNetworkConditionsOffline', |
# This test is too flaky on the bots, but seems to run perfectly fine |
# on developer workstations. |
+ 'ChromeDriverTest.testEmulateNetworkConditionsNameSpeed', |
'ChromeDriverTest.testEmulateNetworkConditionsSpeed', |
] |
@@ -161,6 +162,7 @@ _ANDROID_NEGATIVE_FILTER['chromedriver_webview_shell'] = ( |
'ChromeDriverTest.testShadowDom*', |
# WebView doesn't support emulating network conditions. |
'ChromeDriverTest.testEmulateNetworkConditions', |
+ 'ChromeDriverTest.testEmulateNetworkConditionsNameSpeed', |
'ChromeDriverTest.testEmulateNetworkConditionsOffline', |
'ChromeDriverTest.testEmulateNetworkConditionsSpeed', |
] |
@@ -806,6 +808,19 @@ class ChromeDriverTest(ChromeDriverBaseTest): |
self.assertEquals(latency, network['latency']); |
self.assertEquals(throughput, network['download_throughput']); |
self.assertEquals(throughput, network['upload_throughput']); |
+ self.assertEquals(False, network['offline']); |
+ |
+ def testEmulateNetworkConditionsName(self): |
+ # DSL: 2Mbps throughput, 5ms RTT |
+ #latency = 5 |
+ #throughput = 2048 * 1024 |
+ self._driver.SetNetworkConditionsName('DSL') |
+ |
+ network = self._driver.GetNetworkConditions() |
+ self.assertEquals(5, network['latency']); |
+ self.assertEquals(2048*1024, network['download_throughput']); |
+ self.assertEquals(2048*1024, network['upload_throughput']); |
+ self.assertEquals(False, network['offline']); |
def testEmulateNetworkConditionsSpeed(self): |
# Warm up the browser. |
@@ -832,6 +847,30 @@ class ChromeDriverTest(ChromeDriverBaseTest): |
self.assertLessEqual(actual_throughput_kbps, throughput_kbps * 1.5) |
self.assertGreaterEqual(actual_throughput_kbps, throughput_kbps / 1.5) |
+ def testEmulateNetworkConditionsNameSpeed(self): |
+ # Warm up the browser. |
+ self._http_server.SetDataForPath( |
+ '/', "<html><body>blank</body></html>") |
+ self._driver.Load(self._http_server.GetUrl() + '/') |
+ |
+ # DSL: 2Mbps throughput, 5ms RTT |
+ throughput_kbps = 2048 |
+ throughput = throughput_kbps * 1024 |
+ self._driver.SetNetworkConditionsName('DSL') |
+ |
+ _32_bytes = " 0 1 2 3 4 5 6 7 8 9 A B C D E F" |
+ _1_megabyte = _32_bytes * 32768 |
+ self._http_server.SetDataForPath( |
+ '/1MB', |
+ "<html><body>%s</body></html>" % _1_megabyte) |
+ start = time.time() |
+ self._driver.Load(self._http_server.GetUrl() + '/1MB') |
+ finish = time.time() |
+ duration = finish - start |
+ actual_throughput_kbps = 1024 / duration |
+ self.assertLessEqual(actual_throughput_kbps, throughput_kbps * 1.5) |
+ self.assertGreaterEqual(actual_throughput_kbps, throughput_kbps / 1.5) |
+ |
def testEmulateNetworkConditionsOffline(self): |
self._driver.SetNetworkConditions(5, 2048, 2048, offline=True) |
self._driver.Load(self.GetHttpUrlForFile('/chromedriver/page_test.html')) |