| # -*- 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 and secure wipe (very slower). |
| _ENABLE_FACTORY_SECURE_WIPE = False |
| |
| # True to force automatically detecting HWID without manually selection; |
| # False for operator to select from a list of HWIDs (and get more precise error |
| # messages when not matched, useful for debugging and RMA). |
| _ENABLE_AUTODETECT_HWID = True |
| |
| # Change this to True if you want to make sure every tests has been already |
| # passed before running finalization. |
| # RECOMMENDED FOR SHIPPING DEVICES. |
| _ENABLE_CHECK_ALL_TEST_PASSED = False |
| |
| # Change this to enable firmware write protection on finalize. |
| # THIS IS REQUIRED TO BE TRUE FOR SHIPPING DEVICES. |
| _ENABLE_FW_WP = False # WARNING: False is ONLY ALLOWED FOR DEBUGGING. |
| |
| # Change this to match your local report upload site. |
| _REPORT_UPLOAD_METHOD = 'none' # WARNING: none is ONLY ALLOWED FOR DEBUGGING. |
| # |
| # * 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( |
| label_en='start', |
| label_zw='開始', |
| autotest_name='factory_Start', |
| kbd_shortcut='e', |
| dargs={'press_to_continue': True, |
| 'require_external_power': True}), |
| |
| # 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_zw='同步', |
| # autotest_name='factory_ScriptWrapper', |
| # kbd_shortcut='s', |
| # dargs={'cmdline': job.autodir + |
| # '/site_tests/factory_ScriptWrapper/dummy.sh'}), |
| |
| # Suggested tests (optional): --------------------------------------------- |
| |
| AutomatedSequence( |
| label_en='memory', |
| label_zw='記憶體', |
| subtest_tag_prefix='memoryrunin', |
| kbd_shortcut='r', |
| subtest_list=[ |
| |
| AutomatedSubTest( |
| label_en='system stress', |
| label_zw='壓力測試', |
| autotest_name='hardware_SAT', |
| dargs={'seconds': _SAT_DURATION_SECS}, |
| drop_caches=True), |
| ]), |
| |
| AutomatedSequence( |
| label_en='graphics', |
| label_zw='圖型', |
| subtest_tag_prefix='graphicsrunin', |
| kbd_shortcut='3', |
| subtest_list=[ |
| |
| AutomatedSubTest( |
| label_en='graphics', |
| label_zw='圖型', |
| autotest_name='graphics_GLBench'), |
| ]), |
| |
| AutomatedSequence( |
| label_en='restart', |
| label_zw='燒機測試', |
| subtest_tag_prefix='restartrunin', |
| kbd_shortcut='p', |
| subtest_list=[ |
| |
| AutomatedSubTest( |
| label_en='sleep / wake', |
| label_zw='睡眠 / 喚醒', |
| autotest_name='power_Resume'), |
| |
| AutomatedRebootSubTest( |
| label_en='reboot (%s times)' % _REBOOT_SEQ_ITERATIONS, |
| label_zw='重新開機 (%s 次)' % _REBOOT_SEQ_ITERATIONS, |
| iterations=_REBOOT_SEQ_ITERATIONS), |
| ]), |
| |
| AutomatedSequence( |
| label_en='gps', |
| label_zw='GPS 硬體', |
| subtest_tag_prefix='gpspresence', |
| kbd_shortcut='g', |
| subtest_list=[ |
| |
| AutomatedSubTest( |
| label_en='GPS hardware', |
| label_zw='GPS 硬體', |
| autotest_name='hardware_GPS'), |
| ]), |
| |
| OperatorTest( |
| label_en='touchpad', |
| label_zw='觸控板', |
| autotest_name='factory_Touchpad', |
| kbd_shortcut='t'), |
| |
| OperatorTest( |
| label_en='display', |
| label_zw='顯示', |
| autotest_name='factory_Display', |
| kbd_shortcut='m'), |
| |
| OperatorTest( |
| label_en='x-display', |
| label_zw='外接顯示', |
| autotest_name='factory_ExtDisplay', |
| kbd_shortcut='n', |
| dargs={'has_audio':True, |
| 'audio_sample_path':'site_tests/suite_Factory/fhorn.wav'}), |
| |
| OperatorTest( |
| label_en='camera', |
| label_zw='相機', |
| autotest_name='factory_Camera', |
| kbd_shortcut='c'), |
| |
| OperatorTest( |
| label_en='audio', |
| label_zw='音源裝置', |
| autotest_name='factory_Audio', |
| kbd_shortcut='a', |
| dargs={'audio_sample_path':'site_tests/suite_Factory/fhorn.wav'}), |
| |
| OperatorTest( |
| label_en='usb', |
| autotest_name='factory_ExternalStorage', |
| kbd_shortcut='u', |
| dargs={'media':'USB'}), |
| |
| OperatorTest( |
| label_en='sd', |
| autotest_name='factory_ExternalStorage', |
| kbd_shortcut='d', |
| dargs={'media':'SD'}), |
| |
| OperatorTest( |
| label_en='light sensor', |
| label_zw='光感應器', |
| autotest_name='factory_LightSensor', |
| dargs={'lux_max':1000, 'lux_min':1}, |
| kbd_shortcut='i'), |
| |
| # 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( |
| label_en='devrec', |
| label_zw='還原模式', |
| autotest_name='factory_DeveloperRecovery', |
| kbd_shortcut='b', |
| 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( |
| label_en='region', |
| label_zw='地區語系', |
| autotest_name='factory_SelectRegion', |
| kbd_shortcut='j'), |
| |
| OperatorTest( |
| label_en='keyboard', |
| label_zw='鍵盤', |
| autotest_name='factory_Keyboard', |
| kbd_shortcut='k'), |
| |
| # 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( |
| label_en='serial no', |
| label_zw='序號設定', |
| autotest_name='factory_SetSN', |
| kbd_shortcut='6'), |
| |
| # 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. |
| AutomatedSequence( |
| label_en='HWID', |
| label_zw='硬體代號', |
| subtest_tag_prefix='hwid', |
| kbd_shortcut='h', |
| subtest_list=[ |
| |
| AutomatedSubTest( |
| label_en='hw-qual-id matching', |
| label_zw='型號匹配', |
| autotest_name='factory_ProbeHWID', |
| dargs={'autodetect': _ENABLE_AUTODETECT_HWID}, |
| unique_name='hw-qual-id-match'), |
| |
| AutomatedSubTest( |
| label_en='write GBB', |
| label_zw='寫入GBB', |
| autotest_name='factory_WriteGBB'), |
| |
| AutomatedRebootSubTest( |
| label_en='reboot', |
| label_zw='重新開機', |
| iterations=1), |
| |
| # Validation will be made in final stage. |
| # If you've got problems, use gooftool to check. |
| ]), |
| |
| # THIS IS A GOOGLE REQUIRED TEST. |
| # PLEASE DO NOT REMOVE THIS TEST IN PRODUCTION RELEASES. |
| AutomatedSequence( |
| label_en='final', |
| label_zw='最終步驟', |
| subtest_tag_prefix='finalize', |
| kbd_shortcut='f', |
| subtest_list=[ |
| # The pre-flight is to help operators checking if everything is OK. |
| # You can remove the step if you want a fully automated process. |
| AutomatedSubTest( |
| label_en='pre flight', |
| label_zw='就緒檢查', |
| autotest_name='factory_PreFinalCheck'), |
| # The finalize is required for every products. |
| # You can't remove this step. |
| AutomatedSubTest( |
| label_en='finalize', |
| label_zw='最終程序', |
| autotest_name='factory_Finalize', |
| dargs={ |
| 'check_required_tests': _ENABLE_CHECK_ALL_TEST_PASSED, |
| 'check_and_enable_write_protect': _ENABLE_FW_WP, |
| 'upload_method': _REPORT_UPLOAD_METHOD, |
| 'secure_wipe': _ENABLE_FACTORY_SECURE_WIPE, |
| })]), |
| |
| InformationScreen( |
| label_en='review', |
| label_zw='報告', |
| autotest_name='factory_Review', |
| unique_name='ReviewInformation', # REVIEW_INFORMATION_TEST_UNIQUE_NAME |
| kbd_shortcut='z'), |
| ] |