blob: cc9b6c5318d004f80503277258129a17d2501ac4 [file] [log] [blame]
# -*- mode: python; coding: utf-8 -*-
#
# Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# DOCUMENTATION:
#
# Define below an ordered list if tests for execution on factory
# assembly lines. This list can be customized for specific factory
# needs, within the limits set by the below comments -- specifically,
# ODMs should not remove any Google required tests.
#
# This file is loaded via a call to execfile() in the primary factory
# autotest control file.
# -- CUSTOMIZATION VARIABLES ---------------------------------------
# You can tune these settings to fit your factory process.
# Change this to the number of reboots you want during run-in.
_REBOOT_SEQ_ITERATIONS = 2
# Change this to the duration of SAT during run-in (suggested 10+ mins).
_SAT_DURATION_SECS = 60
# Change this to True if you want secure wipe (very slow).
_ENABLE_FACTORY_SECURE_WIPE = False
# Change this to False to enable developer-friendly finalization.
# Firmware write protection and dev-switch check are bypassed in developer mode.
# THIS IS REQUIRED TO BE FALSE FOR SHIPPING DEVICES.
_ENABLE_DEVELOPER_MODE = True # WARNING: True is ONLY ALLOWED FOR DEBUGGING.
# Change this to enable checking external power (AC) before starting test.
_ENABLE_CHECK_EXTERNAL_POWER = False
# Change this to enable using shop floor system.
_ENABLE_SHOP_FLOOR = False
# Change this to http://SERVER_ADDR:PORT/ if your shop floor server is not
# running on same host of mini-omaha server.
_SHOP_FLOOR_SERVER_URL = ''
# Change this to match your local report upload site.
# Default is to use shopfloor if available, otherwise None to discard reports.
# WARNING: None is ONLY ALLOWED FOR DEBUGGING.
_REPORT_UPLOAD_METHOD = 'shopfloor' if _ENABLE_SHOP_FLOOR else None
#
# * For LAN environments, setup a FTP server and build FTP URL.
# Example: ftp://user:pass@host:port/directory/
#
#_REPORT_UPLOAD_METHOD = 'ftp://LOCAL_FTP_HOST/'
#
# * If you have access to public internet, use Google CPFE URL.
# Example: ("cpfe:https://www.google.com/chromeos/partner/fe/report_upload?"
# "device_name=mario&report_type=rma")
#
#_REPORT_UPLOAD_METHOD = (
# "cpfe:https://www.google.com/chromeos/partner/fe/report_upload?"
# "device_name=PLATFORM_NAME&report_type=REPORT_TYPE")
#
# REPORT UPLOADING IS REQUIRED TO BE SET AT BUILD TIME.
# REPORTS MUST BE PROVIDED TO GOOGLE, MACHINES WITHOUT LOGS CANNOT BE SUPPORTED.
# -- END OF CUSTOMIZATION VARIABLES --------------------------------
# TEST ORDERING: Tests in the test_list will be run in the order
# below, unless the operator interrupts the flow via keyboard
# shortcut. To cause immediate execution of the run-in tests, for
# example, reorder runin to occur as the first test in the test_list.
TEST_LIST = [
OperatorTest(
autotest_name='factory_Start',
label_zh='開始',
never_fails=True,
# 'press_to_continue' can be disabled by default when the configuration
# includes other explicit prompts, like _ENABLE_SHOP_FLOOR (operator
# must input one string), so the value is "not _ENABLE_SHOP_FLOOR".
dargs={'press_to_continue': not _ENABLE_SHOP_FLOOR,
'require_external_power': _ENABLE_CHECK_EXTERNAL_POWER,
'require_shop_floor': _ENABLE_SHOP_FLOOR,
'shop_floor_server_url': _SHOP_FLOOR_SERVER_URL}),
# The factory_ScriptWrapper allows interactive execution of
# external scripts or programs with the output displayed in the
# testing widget area of the screen. This is useful, for example,
# to sync-up with the assembly line IT system.
# OperatorTest(
# label_en='sync',
# label_zh='同步',
# autotest_name='factory_ScriptWrapper',
# kbd_shortcut='s',
# dargs={'cmdline': job.autodir +
# '/site_tests/factory_ScriptWrapper/dummy.sh'}),
# Suggested tests (optional): ---------------------------------------------
AutomatedSequence(
id='Memory',
label_zh='記憶體',
subtests=[
OperatorTest(
autotest_name='factory_StressTest',
label_zh='壓力測試',
dargs={'seconds': _SAT_DURATION_SECS}),
]),
AutomatedSequence(
id='Graphics',
label_zh='圖型',
subtests=[
AutomatedSubTest(
autotest_name='graphics_GLBench',
label_zh='圖型'),
]),
AutomatedSequence(
id='Restart',
label_zh='燒機測試',
subtests=[
AutomatedSubTest(
label_en='sleep / wake',
label_zh='睡眠 / 喚醒',
autotest_name='power_Resume'),
AutomatedRebootSubTest(
label_en='reboot (%s times)' % _REBOOT_SEQ_ITERATIONS,
label_zh='重新開機 (%s 次)' % _REBOOT_SEQ_ITERATIONS,
iterations=_REBOOT_SEQ_ITERATIONS),
]),
AutomatedSequence(
id='GPS',
label_zh='GPS 硬體',
subtests=[
AutomatedSubTest(
autotest_name='hardware_GPS',
label_zh='GPS 硬體'),
]),
AutomatedSequence(
id='EC',
subtests=[
AutomatedSubTest(
id='ECComm',
label_en='EC Communication Test',
label_zh='EC',
autotest_name='hardware_EC',
dargs={'num_temp_sensor': 0,
'test_fan': False,
'test_battery': False}),
AutomatedSubTest(
id='ECFan',
label_en='Fan Test',
label_zh='Fan',
autotest_name='hardware_EC',
dargs={'num_temp_sensor': 0,
'test_fan': True,
'test_battery': False}),
AutomatedSubTest(
id='ECTemp',
label_en='Temp Sensor Test',
label_zh='Sensor',
autotest_name='hardware_EC',
dargs={'num_temp_sensor': 10,
'test_fan': False,
'test_battery': False}),
AutomatedSubTest(
id='ECBattery',
label_en='Battery Test',
label_zh='Battery',
autotest_name='hardware_EC',
dargs={'num_temp_sensor': 0,
'test_fan': False,
'test_battery': True}),
]),
OperatorTest(
id="KbBacklight",
autotest_name='factory_KeyboardBacklight',
label_zh='鍵盤背光'),
OperatorTest(
autotest_name='factory_Touchpad',
label_zh='觸控板'),
OperatorTest(
autotest_name='factory_Display',
label_zh='顯示'),
OperatorTest(
autotest_name='factory_ExtDisplay',
label_zh='外接顯示',
dargs={'has_audio':True,
'audio_sample_path':'site_tests/suite_Factory/fhorn.wav'}),
OperatorTest(
autotest_name='factory_Camera',
label_zh='相機'),
OperatorTest(
autotest_name='factory_Audio',
label_zh='音源裝置',
dargs={'audio_sample_path':'site_tests/suite_Factory/fhorn.wav'}),
OperatorTest(
id='usb',
autotest_name='factory_ExternalStorage',
dargs={'media':'USB', 'min_read_speed': 20, 'min_write_speed': 10}),
OperatorTest(
id='sd',
autotest_name='factory_ExternalStorage',
dargs={'media':'SD', 'min_read_speed': 6, 'min_write_speed': 2}),
OperatorTest(
autotest_name='factory_LightSensor',
label_zh='光感應器'),
OperatorTest(
autotest_name='factory_Keyboard',
label_zh='鍵盤',
kbd_shortcut='k'),
# Required tests (mandatory): ----------------------------------------------
# THIS IS A GOOGLE REQUIRED TEST.
# YOU MUST TEST THIS COMPONENT, EITHER WITH THIS TEST, OR ANOTHER EQUIVALENT
# TEST THAT YOU HAVE HAD REVIEWED BY GOOGLE.
OperatorTest(
id='DevRec',
autotest_name='factory_DeveloperRecovery',
label_zh='還原模式',
dargs={'layout':'devrec'}),
# THIS IS A GOOGLE REQUIRED TEST.
# YOU MUST TEST THIS COMPONENT, EITHER WITH THIS TEST, OR ANOTHER EQUIVALENT
# TEST THAT YOU HAVE HAD REVIEWED BY GOOGLE.
OperatorTest(
autotest_name='factory_VPD',
label_zh='產品資訊',
kbd_shortcut='v'),
# THIS IS A GOOGLE REQUIRED TEST.
# YOU MUST TEST THIS COMPONENT, EITHER WITH THIS TEST, OR ANOTHER EQUIVALENT
# TEST THAT YOU HAVE HAD REVIEWED BY GOOGLE.
OperatorTest(
autotest_name='factory_HWID',
label_zh='硬體代號',
kbd_shortcut='h'),
# THIS IS A GOOGLE REQUIRED TEST.
# PLEASE DO NOT REMOVE THIS TEST IN PRODUCTION RELEASES.
OperatorTest(
autotest_name='factory_Finalize',
label_zh='最終程序',
kbd_shortcut='f',
dargs={
'developer_mode': _ENABLE_DEVELOPER_MODE,
'upload_method': _REPORT_UPLOAD_METHOD,
'secure_wipe': _ENABLE_FACTORY_SECURE_WIPE,
}),
]