1 # Copyright 2016 The Chromium OS Authors. All rights reserved. 2 # Use of this source code is governed by a BSD-style license that can be 3 # found in the LICENSE file. 4 5 from autotest_lib.server import utils 6 from autotest_lib.client.common_lib.cros.cfm.usb import cfm_usb_devices 7 8 AUTHOR = "denniswu (a] chromium.org" 9 NAME = "enterprise_CFM_PTZStress.PTZPro2" 10 TIME = "SHORT" 11 TEST_CATEGORY = "Functional" 12 TEST_CLASS = "enterprise" 13 TEST_TYPE = "server" 14 ATTRIBUTES = "suite:hotrod" 15 DEPENDENCIES = "meet_app, ptzpro2" 16 JOB_RETRIES = 1 17 18 DOC = """ 19 Test scenario: 20 1. Enroll the device and start a meeting. 21 2. During meeting PTZ the camera according to the control file. 22 Verify the following functionalities: 23 1. Camera is enumerated. 24 2. Verify PTZ signals are sent to the camera. 25 """ 26 27 args_dict = utils.args_to_dict(args) 28 29 test_config = { 30 'camera': cfm_usb_devices.PTZ_PRO_2_CAMERA, 31 'repeat': 10, 32 'motion_duration': 2, 33 'usb_trace_path': '/tmp/camera.mon.out' 34 } 35 36 ptz_motion_sequence = ['panLeft', 'panStop', 'tiltUp', 'tiltStop', 'zoomIn', 'resetPosition'] 37 38 servo_args = hosts.CrosHost.get_servo_arguments(args_dict) 39 40 def run_test(machine): 41 host = hosts.create_host(machine, servo_args=None) 42 job.run_test('enterprise_CFM_PTZStress', 43 host=host, 44 test_config=test_config, 45 ptz_motion_sequence=ptz_motion_sequence) 46 47 parallel_simple(run_test, machines) 48