'The actual controller that coordinates and runs the tests.
This attempts to process all the tests concurrently across
seperate threads, where each test will:
(1) Determine whether or not the test is a candidate
(passes the --test_include / --test_exclude criteria)
(2) Evaluate the test\'s requirements.
If the configuration requirements are not met then SKIP the test.
(a) Attempt to tunnel each of the service tests, sharing existing
tunnels used by other tests. The tunnels allocate unused local
ports to avoid potential conflict within the local machine.
(b) Wait for the service to be ready. Ideally this means it is
healthy, however we\'ll allow unhealthy services to proceed
as well and let those tests run and fail in case they are
testing unhealthy service situations.
(c) If there is an error or the service takes too long then
outright FAIL the test.
(3) Acquire the quota that the test requires.
* If the quota is not currently available, then block the
thread until it is. Since each test is in its own thread, this
will not impact other tests.
* Quota are only internal resources within the controller.
This is used for purposes of rate limiting, etc. It does not
coordinate with the underlying platforms.
* Quota is governed with --test_quota. If a test requests
a resource without a known quota, then the quota is assumed
to be infinite.
(4) Grab a semaphore used to rate limit running tests.
This is controlled by --test_concurrency, which defaults to all.
(5) Run the test.
(6) Release the quota and semaphore to unblock other tests.
(7) Record the outcome as PASS or FAIL
If an exception is thrown along the way, the test will automatically
be recorded as a FAILURE.'

def run_tests(self):

    options = self.options
    if options.test_disable:
        logging.info('--test_disable    skips    test    phase    entirely.')
        return
    all_test_profiles = self.test_suite['tests']
    logging.info('Running    tests    (concurrency=%s).', (options.test_concurrency or 'infinite'))
    thread_pool = ThreadPool(len(all_test_profiles))
    thread_pool.map(self.__run_or_skip_test_profile_entry_wrapper, all_test_profiles.items())
    thread_pool.terminate()
    logging.info('Finished    running    tests.')
