1# Copyright 2016 The Chromium OS Authors. All rights reserved. 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5AUTHOR = 'krisr, wiley, jabele' 6NAME = 'network_WiFi_ChaosConnectDisconnect.wpa2psk' 7TIME = 'LONG' 8TEST_TYPE = 'server' 9ATTRIBUTES = ('suite:wifi_interop, suite:android_wifi_interop, ' 10 'suite:wifi_interop_wpa2') 11DEPENDENCIES = 'chaos_nightly, chaos_dut' 12 13DOC = """ 14This script iterates through all of the access points in the AP compatibility 15lab and has a chrome device connect to each in series. This test must be 16performed in the AP compatibility lab. 17""" 18 19from autotest_lib.server.cros.ap_configurators import ap_spec 20from autotest_lib.server.cros.chaos_lib import chaos_runner 21 22def run_chaos_wpa2psk(machine): 23 host = hosts.create_host(machine) 24 # Test with WPA2PSK on both 2.4 and 5 GHz bands 25 ap_specs = [ap_spec.APSpec(security=ap_spec.SECURITY_TYPE_WPA2PSK, 26 band=ap_spec.BAND_2GHZ), 27 ap_spec.APSpec(security=ap_spec.SECURITY_TYPE_WPA2PSK, 28 band=ap_spec.BAND_5GHZ), 29 # Non-US models, which are all static 30 ap_spec.APSpec(security=ap_spec.SECURITY_TYPE_WPA2PSK, 31 band=ap_spec.BAND_5GHZ, 32 channel=48, 33 configurator_type=ap_spec.CONFIGURATOR_STATIC)] 34 for spec in ap_specs: 35 runner = chaos_runner.ChaosRunner( 36 'network_WiFi_ChaosConnectDisconnect', host, spec) 37 runner.run(job) 38 39 40parallel_simple(run_chaos_wpa2psk, machines) 41