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

Side by Side Diff: build/android/pylib/run_java_tests.py

Issue 11269036: Support HTTP test-server based net unit tests on Android. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix Clang build + sync Created 8 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Runs the Java tests. See more information on run_instrumentation_tests.py.""" 5 """Runs the Java tests. See more information on run_instrumentation_tests.py."""
6 6
7 import fnmatch 7 import fnmatch
8 import logging 8 import logging
9 import os 9 import os
10 import re 10 import re
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 # because it may have race condition when multiple processes are trying to 261 # because it may have race condition when multiple processes are trying to
262 # launch lighttpd with same port at same time. 262 # launch lighttpd with same port at same time.
263 http_server_ports = self.LaunchTestHttpServer( 263 http_server_ports = self.LaunchTestHttpServer(
264 os.path.join(constants.CHROME_DIR), 264 os.path.join(constants.CHROME_DIR),
265 (constants.LIGHTTPD_RANDOM_PORT_FIRST + self.shard_index)) 265 (constants.LIGHTTPD_RANDOM_PORT_FIRST + self.shard_index))
266 if self.ports_to_forward: 266 if self.ports_to_forward:
267 port_pairs = [(port, port) for port in self.ports_to_forward] 267 port_pairs = [(port, port) for port in self.ports_to_forward]
268 # We need to remember which ports the HTTP server is using, since the 268 # We need to remember which ports the HTTP server is using, since the
269 # forwarder will stomp on them otherwise. 269 # forwarder will stomp on them otherwise.
270 port_pairs.append(http_server_ports) 270 port_pairs.append(http_server_ports)
271 self.forwarder = Forwarder( 271 self.forwarder = Forwarder(self.adb, self.build_type)
272 self.adb, port_pairs, self.tool, '127.0.0.1', self.build_type) 272 self.forwarder.Run(port_pairs, self.tool, '127.0.0.1')
273 self.CopyTestFilesOnce() 273 self.CopyTestFilesOnce()
274 self.flags.AddFlags(['--enable-test-intents']) 274 self.flags.AddFlags(['--enable-test-intents'])
275 275
276 def TearDown(self): 276 def TearDown(self):
277 """Cleans up the test harness and saves outstanding data from test run.""" 277 """Cleans up the test harness and saves outstanding data from test run."""
278 if self.forwarder: 278 if self.forwarder:
279 self.forwarder.Close() 279 self.forwarder.Close()
280 self.GenerateCoverageReportIfNeeded() 280 self.GenerateCoverageReportIfNeeded()
281 super(TestRunner, self).TearDown() 281 super(TestRunner, self).TearDown()
282 282
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after
483 message)] 483 message)]
484 test_result = None 484 test_result = None
485 self.TestTeardown(test, test_result) 485 self.TestTeardown(test, test_result)
486 return self.test_results 486 return self.test_results
487 487
488 488
489 class TestSharder(BaseTestSharder): 489 class TestSharder(BaseTestSharder):
490 """Responsible for sharding the tests on the connected devices.""" 490 """Responsible for sharding the tests on the connected devices."""
491 491
492 def __init__(self, attached_devices, options, tests, apks): 492 def __init__(self, attached_devices, options, tests, apks):
493 BaseTestSharder.__init__(self, attached_devices) 493 BaseTestSharder.__init__(self, attached_devices, options.build_type)
494 self.options = options 494 self.options = options
495 self.tests = tests 495 self.tests = tests
496 self.apks = apks 496 self.apks = apks
497 497
498 def SetupSharding(self, tests): 498 def SetupSharding(self, tests):
499 """Called before starting the shards.""" 499 """Called before starting the shards."""
500 SetTestsContainer(sharded_tests_queue.ShardedTestsQueue( 500 SetTestsContainer(sharded_tests_queue.ShardedTestsQueue(
501 len(self.attached_devices), tests)) 501 len(self.attached_devices), tests))
502 502
503 def CreateShardedTestRunner(self, device, index): 503 def CreateShardedTestRunner(self, device, index):
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
574 574
575 logging.info('Will run: %s', str(tests)) 575 logging.info('Will run: %s', str(tests))
576 576
577 if len(attached_devices) > 1 and (coverage or options.wait_for_debugger): 577 if len(attached_devices) > 1 and (coverage or options.wait_for_debugger):
578 logging.warning('Coverage / debugger can not be sharded, ' 578 logging.warning('Coverage / debugger can not be sharded, '
579 'using first available device') 579 'using first available device')
580 attached_devices = attached_devices[:1] 580 attached_devices = attached_devices[:1]
581 sharder = TestSharder(attached_devices, options, tests, apks) 581 sharder = TestSharder(attached_devices, options, tests, apks)
582 test_results = sharder.RunShardedTests() 582 test_results = sharder.RunShardedTests()
583 return test_results 583 return test_results
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698