tests: Add channels argument to run-all.sh and start.sh

Add an option to run-all.sh and start.sh to get as an argument the
number of concurrent channels that mac80211_hwsim will be loaded with.
To start mac80211_hwsim with more than one channel, the following
parameter should be added to command line: channels=<num_channels>
The default is one channel (no concurrent channels).
The driver should be loaded with multi channel support in order to run
some tests.

Signed-off-by: Haim Dreyfuss <haim.dreyfuss@intel.com>
This commit is contained in:
Haim Dreyfuss 2014-06-10 20:50:29 +03:00 committed by Jouni Malinen
parent e6270129f6
commit 57d909eeff
3 changed files with 27 additions and 2 deletions

View file

@ -146,6 +146,9 @@ conditions:
# run normal test cases with Linux tracing
./run-all.sh trace
# run normal test cases with multi channel support (see details below)
./run-all.sh channels=<num of channels>
run-all.sh directs debug logs into the logs subdirectory (or $LOGDIR if
present in the environment). Log file names include the current UNIX
timestamp and a postfix to identify the specific log:
@ -170,6 +173,12 @@ used to specify that all test cases from a single file are to be
run. Test name as the last command line argument can be specified that a
single test case is to be run (e.g., "./run-tests.py ap_pmf_required").
Notice that some tests require the driver to support concurrent
operation on multi channels in order to run. These tests will be skipped
in case the driver does not support multi channels. To enable support
for multi channel, the number of supported channel is passed as an
argument to run-all.sh or start.sh
Adding/modifying test cases
---------------------------

View file

@ -43,7 +43,14 @@ else
unset TRACE_ARGS
fi
if ! ./start.sh $VALGRIND $TRACE; then
NUM_CH=$1
if [ x${NUM_CH%=[0-9]*} = "xchannels" ]; then
shift
else
unset NUM_CH
fi
if ! ./start.sh $VALGRIND $TRACE $NUM_CH; then
if ! [ -z "$LOGBASEDIR" ] ; then
echo "Could not start test environment" > $LOGDIR/run
fi

View file

@ -68,7 +68,16 @@ else
fi
$DIR/stop.sh
test -f /proc/modules && sudo modprobe mac80211_hwsim radios=6
TMP=$1
if [ x${TMP%=[0-9]*} = "xchannels" ]; then
NUM_CH=${TMP#channels=}
shift
else
NUM_CH=1
fi
test -f /proc/modules && sudo modprobe mac80211_hwsim radios=6 channels=$NUM_CH
sudo ifconfig hwsim0 up
sudo $WLANTEST -i hwsim0 -n $LOGDIR/hwsim0.pcapng -c -dt -L $LOGDIR/hwsim0 &
for i in 0 1 2; do