# Copyright 2020 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 = "yllin"
NAME = "faft_ec_fw_qual"
PURPOSE = "Qualify the EC firmware for RW or RO+RW release"

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

DOC = """
This test suite verifies if the EC firmware is ready for production
release.
"""

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

args_dict['name'] = 'faft_ec_fw_qual'
args_dict['job'] = job
args_dict['add_experimental'] = True

dynamic_suite.reimage_and_run(**args_dict)
