blob: a70cd33594f2afd1f94e37aa43ca1c84b6ee930e [file] [log] [blame]
# Copyright (c) 2010 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.
# This test run is meant to test AP hopping. This is a fairly
# simple test and is very "kind" to the DUT, in the sense that
# when we do an AP deconfig, it sends out a DEAUTH, so the DUT
# should be immediately aware that it is time to scan for a new
# AP. This should be a best-case roaming test. This test differs
# from regular "ChannelHop" in that the BSSID of the AP is changed.
# This means that even with fullmac drivers that may change
# channels without a lot of upstream notification, this test should
# definitely cause upstream notification to the supplicant and by
# extension, flimflam.
{ "name":"ChannelHopBSS",
"steps":[ # Channel 1,6,11
[ "create", { "type":"hostap" } ],
# Set up an AP and join the DUT to it
[ "config", { "channel":"2412", "mode":"11b" } ],
[ "connect", { "security":"none" } ],
[ "client_ping", { "count":"10" } ],
[ "deconfig" ],
# Change channels on the AP. This happens in full view of the DUT
# and the AP deauths everyone as it exits. Change the BSSID so that
# this will force L3 reconfiguration in the client
[ "config", { "channel":"2437", "mode":"11b",
"bssid":"00:01:02:03:04:05" } ],
# Wait for the DUT to scan and acquire the AP at the new frequency
[ "wait_service", { "run_timeout":20, # Give up in 20 seconds
"debug":True, # Output all state changes
"states":
[(None, '+ready')] # Wait for svc to go "ready"
} ],
[ "client_ping", { "count":"10" } ],
[ "deconfig" ],
# Repeat the same test at a different frequency and bssid
[ "config", { "channel":"2462", "mode":"11b",
"bssid":"00:06:07:08:09:0a" } ],
[ "wait_service", { "run_timeout":20,
"debug":True,
"states":[(None, '+ready')] } ],
[ "client_ping", { "count":"10" } ],
[ "destroy" ],
],
}