# Copyright (c) 2021 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 = "ChromeOS Team"
NAME = "cellular_Hermes_Restart_SlotSwitch.prodci"
PURPOSE = "Verify that a failed hermes random esim operations attempt reported"
CRITERIA = """
  This test will fail if failed to Install, Enable, Disable, Uninstall Profile
  OR could not able to connect to Hermes dbus daemon.
"""
ATTRIBUTES = "suite:cellular_ota"
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "network"
TEST_TYPE = "client"
DEPENDENCIES = "carrier:esim"
DOC = """
  Defines randomly occuring operations:
  RS = Restart Hermes + Slot Switch
  Do test RS-> Install -> RS -> Enable -> RS-> Disable -> RS -> Uninstall

  This test will fail if failed to Install, Enable, Disable, Uninstall Profile
  OR could not able to connect to Hermes dbus daemon.
  It requires a dut with a modem and euicc
"""

from autotest_lib.client.cros.cellular import test_environment

test_env = test_environment.CellularESIMTestEnvironment()
job.run_test('cellular_Hermes_Restart_SlotSwitch', test_env=test_env,
            is_prod_ci=True)

