# Copyright (c) 2012 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.

AUTHOR = "Chrome OS Team"
NAME = "faft_ec"
PURPOSE = "Test hard-to-automate firmware and ec scenarios."
CRITERIA = "All tests with SUITE=faft_ec must pass."

TIME = "SHORT"
TEST_CATEGORY = "General"
TEST_CLASS = "suite"
TEST_TYPE = "Server"

DOC = """
This is a faft (FULLY AUTOMATED FIRMWARE TEST) suite. The tests in this suite
verify the Chrome OS EC operation, that valid boot scenarios progress properly
(with state progress checks) and that error scenarios (corrupted blobs) are
caught as expected. Some of these test failures should close the tree as they
may imply that the system is unbootable and further tests will only become
hung or blocked. Other tests verify all of the features (some of them security
related) are functioning.

@param build: The name of the image to test.
              Ex: x86-mario-release/R17-1412.33.0-a1-b29
@param board: The board to test on.  Ex: x86-mario
@param pool: The pool of machines to utilize for scheduling. If pool=None
             board is used.
@param check_hosts: require appropriate live hosts to exist in the lab.
@param SKIP_IMAGE: (optional) If present and True, don't re-image devices.
"""

import common
from autotest_lib.server.cros.dynamic_suite import dynamic_suite

dynamic_suite.reimage_and_run(
    build=build, board=board, name='faft_ec', job=job,
    pool=pool, check_hosts=check_hosts, add_experimental=True, num=num,
    file_bugs=file_bugs, skip_reimage=dynamic_suite.skip_reimage(globals()))
