xref: /aosp_15_r20/external/autotest/server/site_tests/tast/control.cross-device (revision 9c5db1993ded3edbeafc8092d69fe5de2ee02df7)
1*9c5db199SXin Li# Copyright 2022 The Chromium OS Authors. All rights reserved.
2*9c5db199SXin Li# Use of this source code is governed by a BSD-style license that can be
3*9c5db199SXin Li# found in the LICENSE file.
4*9c5db199SXin Li
5*9c5db199SXin LiAUTHOR = 'ChromeOS SW Engprod Team ([email protected])'
6*9c5db199SXin LiNAME = 'tast.cross-device'
7*9c5db199SXin LiTIME = 'MEDIUM'
8*9c5db199SXin LiTEST_TYPE = 'Server'
9*9c5db199SXin LiATTRIBUTES = 'suite:cross-device'
10*9c5db199SXin LiMAX_RESULT_SIZE_KB = 1024 * 1024
11*9c5db199SXin LiPY_VERSION = 3
12*9c5db199SXin Li
13*9c5db199SXin Li# tast.py uses binaries installed from autotest_server_package.tar.bz2.
14*9c5db199SXin LiREQUIRE_SSP = True
15*9c5db199SXin Li
16*9c5db199SXin LiDOC = '''Run the Tast Cross Device test suite.'''
17*9c5db199SXin Li
18*9c5db199SXin Lifrom autotest_lib.server.cros.crossdevice import cross_device_util
19*9c5db199SXin Li
20*9c5db199SXin Lidef run(machine):
21*9c5db199SXin Li    # Wifi details that chromebook will connect to.
22*9c5db199SXin Li    ssid = 'nearbysharing_1'
23*9c5db199SXin Li    password = 'password'
24*9c5db199SXin Li
25*9c5db199SXin Li    # Get host objects for each device.
26*9c5db199SXin Li    host = hosts.create_host(machine)
27*9c5db199SXin Li    companions = hosts.create_companion_hosts(companion_hosts)
28*9c5db199SXin Li    phone = companions[0]
29*9c5db199SXin Li
30*9c5db199SXin Li    # Configure devices for crossdevice tests.
31*9c5db199SXin Li    cross_device_util.connect_to_wifi(host, ssid, password)
32*9c5db199SXin Li    ip_address = phone.setup_for_cross_device_tests()
33*9c5db199SXin Li
34*9c5db199SXin Li    # Pass the phones adb-over-tcp "serial" (e.g 192.168.0.30:5555) to Tast as a global var.
35*9c5db199SXin Li    ip_address_arg = 'crossdevice.PhoneIP=%s:5555' % ip_address
36*9c5db199SXin Li
37*9c5db199SXin Li    job.run_test('tast',
38*9c5db199SXin Li                 host=host,
39*9c5db199SXin Li                 test_exprs=['("group:cross-device")'],
40*9c5db199SXin Li                 ignore_test_failures=True, max_run_sec=10800,
41*9c5db199SXin Li                 command_args=args,
42*9c5db199SXin Li                 varslist=[ip_address_arg])
43*9c5db199SXin Liparallel_simple(run, machines)
44