# Copyright 2016 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 = 'sadmac'
NAME = 'brillo_ADBLogcatTest'
TIME = 'SHORT'
TEST_CATEGORY = 'Functional'
TEST_TYPE = 'Server'
ATTRIBUTES = ('suite:brillo-bvt, suite:brillo-pts, suite:brillo-presubmit, '
              'suite:brillo-postsubmit')

DOC = """
Tests whether 'adb logcat' and 'adb shell dmesg' work
"""

def run(machine):
    job.run_test('brillo_ADBLogcatTest', host=hosts.create_host(machine))

parallel_simple(run, machines)
