blob: db96a3761955b822bae9cc28d35896f777f13e7d [file] [log] [blame] [edit]
# Copyright (c) 2011 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.
from autotest_lib.client.bin import test, utils
from autotest_lib.client.common_lib import error
from autotest_lib.client.cros import cros_ui, cros_ui_test
class hardware_UsbPlugIn(cros_ui_test.UITest):
version = 1
def run_once(self):
cmd = 'lsusb | sed "s/.*ID ....:.... //"'
original_usbs = utils.system_output(cmd).split('\n')
dialog = cros_ui.Dialog(question="Please plug a USB device in.",
choices=["OK"])
result = dialog.get_result()
plugin_usbs = utils.system_output(cmd).split('\n')
new_usbs = [e for e in plugin_usbs if e not in original_usbs]
if not new_usbs:
raise error.TestFail("No USB device detected after plugging in");
dialog.init(question="Detected:<br>%s.<hr>Please unplug the device." %
", <br>".join(new_usbs), choices=["OK"])
result = dialog.get_result()
unplug_usbs = utils.system_output(cmd).split('\n')
if original_usbs != unplug_usbs:
raise error.TestFail("The USB devices are not the same as before "
"after unplugging");