# 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 = "Chromium OS Team"
NAME = "logging_GenerateCrashFiles.CHROME"
PURPOSE = "Verify that Chome browser crash files are generated."
TIME = "SHORT"
TEST_CATEGORY = "Functional"
TEST_CLASS = "logging"
TEST_TYPE = "server"
ATTRIBUTES = "suite:usb_detect"

DOC = """
Crash Chrome and confirm log files are generated.
"""

def run(machine):
    host = hosts.create_host(machine)
    crash_cmd = "chrome://inducebrowsercrashforrealz"
    crash_files = ["core", "dmp", "meta", "log", "proclog"]
    prefix = "chrome"
    job.run_test("logging_GenerateCrashFiles", host=host,
                 crash_cmd=crash_cmd, crash_files=crash_files,
                 prefix=prefix, tag="CHROME")

parallel_simple(run, machines)

