2929. " $TOOLS /functestlib.sh"
3030
3131TESTNAME=" WiFi_Manual_IP"
32- test_path=$( find_test_case_by_name " $TESTNAME " )
32+ test_path=" $( find_test_case_by_name " $TESTNAME " ) "
3333cd " $test_path " || exit 1
3434
3535log_info " --------------------------------------------------------------------------"
3636log_info " -------------------Starting $TESTNAME Testcase----------------------------"
3737log_info " === Test Initialization ==="
3838
39+ # ---------------- CLI (SSID/PASSWORD) ----------------
40+ SSID=" "
41+ PASSWORD=" "
42+
43+ while [ $# -gt 0 ]; do
44+ case " $1 " in
45+ --ssid)
46+ shift
47+ if [ -n " ${1:- } " ]; then
48+ SSID=" $1 "
49+ fi
50+ ;;
51+ --password)
52+ shift
53+ if [ -n " ${1:- } " ]; then
54+ PASSWORD=" $1 "
55+ fi
56+ ;;
57+ --help|-h)
58+ echo " Usage: $0 [--ssid SSID] [--password PASS]"
59+ exit 0
60+ ;;
61+ * )
62+ log_warn " Unknown argument: $1 "
63+ ;;
64+ esac
65+ shift
66+ done
67+
3968# Trap to always restore udhcpc script
4069trap ' restore_udhcpc_script' EXIT
4170
42- # Credential extraction (from arguments , env, or ssid_list.txt)
43- if ! CRED=$( get_wifi_credentials " $1 " " $2 " ) || [ -z " $CRED " ]; then
71+ # Credential extraction (from CLI , env, or ssid_list.txt via helper )
72+ if ! CRED=" $( get_wifi_credentials " $SSID " " $PASSWORD " ) " || [ -z " $CRED " ]; then
4473 log_skip_exit " $TESTNAME " " WiFi: SSID and/or password missing. Skipping test."
4574fi
4675
47- SSID=$( echo " $CRED " | awk ' {print $1}' )
48- PASSWORD=$( echo " $CRED " | awk ' {print $2}' )
76+ SSID=" $( echo " $CRED " | awk ' {print $1}' ) "
77+ PASSWORD=" $( echo " $CRED " | awk ' {print $2}' ) "
4978log_info " Using SSID='$SSID ' and PASSWORD='[hidden]'"
5079
5180check_dependencies iw wpa_supplicant udhcpc ip
5281
53- WIFI_IF=$( get_wifi_interface)
54- [ -z " $WIFI_IF " ] && log_fail_exit " $TESTNAME " " No WiFi interface detected."
82+ WIFI_IF=" $( get_wifi_interface) "
83+ if [ -z " $WIFI_IF " ]; then
84+ log_fail_exit " $TESTNAME " " No WiFi interface detected."
85+ fi
5586
56- UDHCPC_SCRIPT=$( ensure_udhcpc_script)
57- [ ! -x " $UDHCPC_SCRIPT " ] && log_fail_exit " $TESTNAME " " Failed to create udhcpc script."
87+ UDHCPC_SCRIPT=" $( ensure_udhcpc_script) "
88+ if [ ! -x " $UDHCPC_SCRIPT " ]; then
89+ log_fail_exit " $TESTNAME " " Failed to create udhcpc script."
90+ fi
5891
5992wifi_cleanup () {
6093 killall -q wpa_supplicant 2> /dev/null
@@ -76,7 +109,7 @@ sleep 4
76109udhcpc -i " $WIFI_IF " -s " $UDHCPC_SCRIPT " -n -q &
77110sleep 8
78111
79- IP=$( ip addr show " $WIFI_IF " | awk ' /inet / {print $2}' | cut -d/ -f1)
112+ IP=" $( ip addr show " $WIFI_IF " | awk ' /inet / {print $2}' | cut -d/ -f1) "
80113if [ -n " $IP " ]; then
81114 log_info " WiFi got IP: $IP (manual DHCP via udhcpc)"
82115 if ping -I " $WIFI_IF " -c 3 -W 2 8.8.8.8 > /dev/null 2>&1 ; then
0 commit comments