blob: e5baa5caab034c5ccdef113a0556bb60d8bfd8aa [file] [log] [blame]
# Copyright 2018 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
AUTHOR = "dhaddock, ChromiumOS"
NAME = "autoupdate_P2P.local"
METADATA = {
"contacts": [
"chromeos-core-services@google.com",
"chromeos-sw-engprod@google.com"
],
"bug_component": "b:908319",
"criteria": "Tests autoupdate via peer to peer(P2P) locally."
}
TIME = "MEDIUM"
TEST_TYPE = "server"
DOC = """
This tests autoupdate between two devices via peer to peer.
Use this control file to debug the test at your desk. The test requires the
lab to schedule and provision two DUTs before the test begins. We will need
to do that setup manually before running the test.
Steps to run from your desk:
1. Lease two DUTs in the lab. They need to be the same make/model and near
each other.
2. ssh into both and make sure they can ping each other.
3. Provision both DUTs to the same build. You can use cros flash to do this.
4. Pass the companion_hosts arg to test_that.
You can use different test_that args to control which subtest to run.
- with_dlc=True for the control.with_dlc subtest.
- too_many_attempts=True for control.too_many_attempts.
- deadline_expired=True for control.deadline_expired.delta
See autoupdate_Basic's control.delta for general info on running autoupdate
tests locally.
test_that <hostname>.cros autoupdate_P2P.local --companion_hosts="<hostname2>.cros" --args="with_dlc=True build=RXX-XXXXX.XX.X"
"""
import logging
from autotest_lib.server import utils
args_dict = utils.args_to_dict(args)
def run(machine):
host1 = hosts.create_host(machine)
companions = hosts.create_companion_hosts(companion_hosts)
job.run_test('autoupdate_P2P', host=host1, companions=companions, running_at_desk=True, **args_dict)
job.parallel_simple(run, machines)