| # Copyright 2019 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. |
| |
| from autotest_lib.server import utils |
| |
| AUTHOR = "Chrome OS Team" |
| NAME = "firmware_Fingerprint.SystemIsLocked" |
| PURPOSE = """ |
| Verify that system_is_locked() is true in the firmware (i.e., |
| CONFIG_CMD_FPSENSOR_DEBUG) is disabled. |
| """ |
| CRITERIA = """ |
| Fails if FPMCU firmware is not locked. |
| """ |
| ATTRIBUTES = "suite:fingerprint" |
| TIME = "SHORT" |
| TEST_CATEGORY = "Functional" |
| TEST_CLASS = "firmware" |
| TEST_TYPE = "server" |
| DEPENDENCIES = "servo_state:WORKING, fingerprint" |
| JOB_RETRIES = 0 |
| |
| DOC = """ |
| This test enables hardware and software write protection when setting up the |
| test. |
| |
| When the test script starts, it runs a command that should be protected when |
| "system_is_locked()" is enabled. The test verifies we get an ACCESS_DENIED |
| error. |
| """ |
| |
| test_images = ['TEST_IMAGE_ORIGINAL'] |
| |
| args_dict = utils.args_to_dict(args) |
| servo_args = hosts.CrosHost.get_servo_arguments(args_dict) |
| |
| def run(machine): |
| host = hosts.create_host(machine, servo_args=servo_args) |
| job.run_test("firmware_Fingerprint", host=host, |
| test_exe="system_is_locked.sh", |
| test_exe_args=test_images, |
| enable_hardware_write_protect=True, |
| enable_software_write_protect=True) |
| |
| parallel_simple(run, machines) |