cram: add cram test for Radio.IEEE80211be.MLDUnitSetting
Testing Various valid combinations on 6GHz PrivateVAP
side-effect: default value of MLDUnitSetting changes behavior of PWHM
i.e. new parameter:
Radio.{i}.IEEE80211be.MLDUnitSetting=Assumed
is expected to invalidate current apmld tests
Reset it to Required, the value that keeps old pwhm behavior
OBUSPA:
Prefix IEEE80211be.MLDUnitSetting with X_PRPLWARE-COM_
and add it to obuspa.expected datamodel dump
testbed.yml : increase timeout by 2min (nominal execution time : 1m50s)
Issue: PPM-3545
Signed-off-by: Iacob Juc <iacob.juc_ext@softathome.com>
This commit is contained in:
parent
c3f756c8c4
commit
42e6ebcb32
@ -1,7 +1,7 @@
|
||||
.testbed:
|
||||
stage: run
|
||||
image: "registry.gitlab.com/prpl-foundation/prplos/ci/containers/testbed/testbed:v1.3.0@sha256:7f50dde2279c201542569b7f31e965d43a308e245a4ec973df52d581560b0c28"
|
||||
timeout: 85 minutes
|
||||
timeout: 87 minutes
|
||||
rules:
|
||||
- if: '$CI_PIPELINE_SOURCE == "schedule"'
|
||||
when: never
|
||||
|
||||
@ -5176,7 +5176,6 @@ Device.WiFi.Radio.{i}.FullScan() input:HomeTime
|
||||
Device.WiFi.Radio.{i}.FullScan() input:SSID
|
||||
Device.WiFi.Radio.{i}.GuardInterval proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.IEEE80211ax. proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.IEEE80211be. proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.IEEE80211hEnabled proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.IEEE80211hSupported proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.LastChange proto::prplmesh-dm-mapper
|
||||
@ -5290,6 +5289,8 @@ Device.WiFi.Radio.{i}.X_PRPLWARE-COM_ChannelMgt.ClearedDfsChannels
|
||||
Device.WiFi.Radio.{i}.X_PRPLWARE-COM_ChannelMgt.CurrentChanspec. proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.X_PRPLWARE-COM_ChannelMgt.TargetChanspec. proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.X_PRPLWARE-COM_DFS Done! proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.X_PRPLWARE-COM_IEEE80211be. proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.X_PRPLWARE-COM_IEEE80211be.MLDUnitSetting proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.X_PRPLWARE-COM_IEEE80211kSupported proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.X_PRPLWARE-COM_IEEE80211rSupported proto::prplmesh-dm-mapper
|
||||
Device.WiFi.Radio.{i}.X_PRPLWARE-COM_NaStaMonitor. proto::prplmesh-dm-mapper
|
||||
|
||||
@ -331,6 +331,14 @@ get_private_mldunit() {
|
||||
R 'usp-cli -j -l "Device.WiFi.SSID.[SSID==\"prplOS\"].MLDUnit?" | jsonfilter -e @[0]'[*].MLDUnit'' | head -n 1
|
||||
}
|
||||
|
||||
# Set MLDUnit of private MLD based on SSID
|
||||
# In : SSID
|
||||
# In : MLDUnit
|
||||
# Out : N/A
|
||||
set_ssid_mldunit() {
|
||||
R "usp-cli -j -l 'Device.WiFi.SSID.[SSID==\"${1}\"].MLDUnit=${2}' | jsonfilter -e @[0]'[*].MLDUnit'"
|
||||
}
|
||||
|
||||
# Print MLDUnit of private MLD based on default SSID (prplOS-guest)
|
||||
# In : N/A
|
||||
# Out : MLDUnit
|
||||
|
||||
@ -5,6 +5,11 @@ Create R alias:
|
||||
$ alias C="${CRAM_REMOTE_COPY:-}"
|
||||
$ C ${TESTDIR}/../scripts/target/usp-events.lua root@${TARGET_LAN_IP}:/tmp/usp-event.lua 2>/dev/null
|
||||
|
||||
|
||||
Set MLDUnitSetting='Required' for all radios
|
||||
$ R "ba-cli -l -a \"protected; WiFi.Radio.*.IEEE80211be.MLDUnitSetting='Required'\" | grep Required | wc -l"
|
||||
3
|
||||
|
||||
$ R "logger -t cram 'Starting PWHM test (step 1) ...'"
|
||||
|
||||
Wait for Device.WiFi. datamodel availability:
|
||||
|
||||
201
.gitlab/tests/cram/wnc-freedom/109-pwhm_mldunit_setting.t
Normal file
201
.gitlab/tests/cram/wnc-freedom/109-pwhm_mldunit_setting.t
Normal file
@ -0,0 +1,201 @@
|
||||
Create R alias:
|
||||
|
||||
$ alias R="${CRAM_REMOTE_COMMAND:-}"
|
||||
$ . "${TESTDIR}/../scripts/wifi.sh"
|
||||
|
||||
$ R "logger -t cram 'Starting MLDUnitSetting test ...'"
|
||||
|
||||
$ wifi_dm "PrplMesh.Enable=0" "X_PRPLWARE-COM_ProcessManager." "ba-cli"
|
||||
X_PRPLWARE-COM_ProcessManager.PrplMesh.Enable=0
|
||||
|
||||
Silently set Disabled-MLD MLDUnit for all SSIDs (12 instances)
|
||||
$ wifi_dm "SSID.*.MLDUnit=-1" "WiFi." "ba-cli" | wc -l
|
||||
12
|
||||
|
||||
|
||||
$ sleep 2
|
||||
|
||||
Check 11be is enabled
|
||||
$ wifi_dm "AccessPoint.5.RadioReference+.OperatingStandards?" "WiFi." "ba-cli"
|
||||
Device.WiFi.Radio.\d+.OperatingStandards="ax,be" (re)
|
||||
|
||||
Check MLO Support
|
||||
$ wifi_dm "Radio.2.IEEE80211_Caps?" "WiFi." "ba-cli" | grep MLO | wc -l
|
||||
1
|
||||
|
||||
Disable AccessPoints
|
||||
|
||||
$ enable_ap_sync * 0
|
||||
AccessPoint.*.Enable=0
|
||||
|
||||
Enable AccessPoint Under Test
|
||||
$ enable_ap_sync 5 1
|
||||
AccessPoint.\d+.Enable=1 (re)
|
||||
|
||||
$ wifi_dm "AccessPoint.5.SSIDReference+.Name?" "WiFi." "ba-cli"
|
||||
Device.WiFi.SSID.\d+.Name="wlan0.1" (re)
|
||||
|
||||
Used later to check hostapd config file
|
||||
$ itf=$(wifi_dm "AccessPoint.5.SSIDReference+.Name?" "WiFi." "ba-cli" | cut -d "=" -f 2 | tr -d "\"")
|
||||
|
||||
$ rad_name=$(wifi_dm "AccessPoint.5.RadioReference+.Name?" "WiFi." "ba-cli" | cut -d "=" -f 2 | tr -d "\"")
|
||||
|
||||
Subset A : MLDUnit=-1
|
||||
|
||||
$ R "logger -t cram 'MLDUnitSetting: Disabled MLDUnit; MLDUnitSetting=NotRequired'"
|
||||
|
||||
Set MLDUnitSetting='NotRequired'
|
||||
$ wifi_dm "Radio.*.IEEE80211be.MLDUnitSetting='NotRequired'" "WiFi." "ba-cli"
|
||||
WiFi.Radio.1.IEEE80211be.MLDUnitSetting="NotRequired"
|
||||
WiFi.Radio.2.IEEE80211be.MLDUnitSetting="NotRequired"
|
||||
WiFi.Radio.3.IEEE80211be.MLDUnitSetting="NotRequired"
|
||||
|
||||
Set Disabled-MLD MLDUnit
|
||||
$ wifi_dm "AccessPoint.5.SSIDReference+.MLDUnit=-1" "WiFi." "ba-cli"
|
||||
Device.WiFi.SSID.\d+.MLDUnit=-1 (re)
|
||||
|
||||
$ sleep 15
|
||||
|
||||
Check 11be configuration values : {ieee80211be} enabled for Radio, {mld_ap,disable_11be} = {0,0} for interface
|
||||
$ R "cat /tmp/${rad_name}_hapd.conf | grep ieee80211be"
|
||||
ieee80211be=1
|
||||
|
||||
$ get_hapd_config $itf mld_ap
|
||||
0
|
||||
|
||||
$ get_hapd_config $itf disable_11be
|
||||
0
|
||||
|
||||
$ R "logger -t cram 'MLDUnitSetting: Disabled MLD; MLDUnitSetting=Required'"
|
||||
|
||||
Set MLDUnitSetting='Required'
|
||||
$ wifi_dm "Radio.*.IEEE80211be.MLDUnitSetting='Required'" "WiFi." "ba-cli"
|
||||
WiFi.Radio.1.IEEE80211be.MLDUnitSetting="Required"
|
||||
WiFi.Radio.2.IEEE80211be.MLDUnitSetting="Required"
|
||||
WiFi.Radio.3.IEEE80211be.MLDUnitSetting="Required"
|
||||
|
||||
$ sleep 15
|
||||
|
||||
Check 11be configuration values : {ieee80211be} disabled for Radio, {mld_ap,disable_11be} absent for interface
|
||||
$ R "cat /tmp/${rad_name}_hapd.conf | grep ieee80211be"
|
||||
ieee80211be=0
|
||||
|
||||
$ get_hapd_config $itf mld_ap
|
||||
Option 'mld_ap' not found
|
||||
|
||||
$ get_hapd_config $itf disable_11be
|
||||
Option 'disable_11be' not found
|
||||
|
||||
$ R "logger -t cram 'MLDUnitSetting: Disabled MLD; MLDUnitSetting=Assumed'"
|
||||
|
||||
Set MLDUnitSetting='Assumed'; with MLDUnit=-1, this should still result in WiFi7 - EHT + MLO configuration
|
||||
$ wifi_dm "Radio.*.IEEE80211be.MLDUnitSetting='Assumed'" "WiFi." "ba-cli"
|
||||
WiFi.Radio.1.IEEE80211be.MLDUnitSetting="Assumed"
|
||||
WiFi.Radio.2.IEEE80211be.MLDUnitSetting="Assumed"
|
||||
WiFi.Radio.3.IEEE80211be.MLDUnitSetting="Assumed"
|
||||
|
||||
$ sleep 15
|
||||
|
||||
Check 11be configuration values : {ieee80211be} enabled for Radio, {mld_ap,disable_11be} = {1,0} for interface
|
||||
$ R "cat /tmp/${rad_name}_hapd.conf | grep ieee80211be"
|
||||
ieee80211be=1
|
||||
|
||||
$ get_hapd_config $itf mld_ap
|
||||
1
|
||||
|
||||
$ get_hapd_config $itf disable_11be
|
||||
0
|
||||
|
||||
Subset B : Valid MLDUnit
|
||||
|
||||
$ R "logger -t cram 'MLDUnitSetting: Enabled MLD; MLDUnitSetting=Required'"
|
||||
|
||||
$ wifi_dm "Radio.*.IEEE80211be.MLDUnitSetting='Required'" "WiFi." "ba-cli"
|
||||
WiFi.Radio.1.IEEE80211be.MLDUnitSetting="Required"
|
||||
WiFi.Radio.2.IEEE80211be.MLDUnitSetting="Required"
|
||||
WiFi.Radio.3.IEEE80211be.MLDUnitSetting="Required"
|
||||
|
||||
$ sleep 15
|
||||
|
||||
Set arbitrary MLDUnit>(-1)
|
||||
$ wifi_dm "AccessPoint.5.SSIDReference+.MLDUnit=8" "WiFi." "ba-cli"
|
||||
Device.WiFi.SSID.\d+.MLDUnit=8 (re)
|
||||
|
||||
$ sleep 15
|
||||
|
||||
Check 11be configuration values : {ieee80211be} enabled for Radio, {mld_ap,disable_11be} = {1,0} for interface
|
||||
$ R "cat /tmp/${rad_name}_hapd.conf | grep ieee80211be"
|
||||
ieee80211be=1
|
||||
|
||||
$ get_hapd_config $itf mld_ap
|
||||
1
|
||||
|
||||
$ get_hapd_config $itf disable_11be
|
||||
0
|
||||
|
||||
$ R "logger -t cram 'MLDUnitSetting: Enabled MLD; MLDUnitSetting=Required'"
|
||||
|
||||
Set MLDUnitSetting='NotRequired'
|
||||
$ wifi_dm "Radio.*.IEEE80211be.MLDUnitSetting='NotRequired'" "WiFi." "ba-cli"
|
||||
WiFi.Radio.1.IEEE80211be.MLDUnitSetting="NotRequired"
|
||||
WiFi.Radio.2.IEEE80211be.MLDUnitSetting="NotRequired"
|
||||
WiFi.Radio.3.IEEE80211be.MLDUnitSetting="NotRequired"
|
||||
|
||||
$ sleep 5
|
||||
|
||||
Check 11be configuration values : {ieee80211be} enabled for Radio, {mld_ap,disable_11be} = {1,0} for interface
|
||||
$ R "cat /tmp/${rad_name}_hapd.conf | grep ieee80211be"
|
||||
ieee80211be=1
|
||||
|
||||
$ get_hapd_config $itf mld_ap
|
||||
1
|
||||
|
||||
$ get_hapd_config $itf disable_11be
|
||||
0
|
||||
|
||||
$ R "logger -t cram 'MLDUnitSetting: Enabled MLD; MLDUnitSetting=NotRequired'"
|
||||
|
||||
Set MLDUnitSetting='NotRequired'
|
||||
$ wifi_dm "Radio.*.IEEE80211be.MLDUnitSetting='Assumed'" "WiFi." "ba-cli"
|
||||
WiFi.Radio.1.IEEE80211be.MLDUnitSetting="Assumed"
|
||||
WiFi.Radio.2.IEEE80211be.MLDUnitSetting="Assumed"
|
||||
WiFi.Radio.3.IEEE80211be.MLDUnitSetting="Assumed"
|
||||
|
||||
$ sleep 5
|
||||
|
||||
Check 11be configuration values : {ieee80211be} enabled for Radio, {mld_ap,disable_11be} = {1,0} for interface
|
||||
$ R "cat /tmp/${rad_name}_hapd.conf | grep ieee80211be"
|
||||
ieee80211be=1
|
||||
|
||||
$ get_hapd_config $itf mld_ap
|
||||
1
|
||||
|
||||
$ get_hapd_config $itf disable_11be
|
||||
0
|
||||
|
||||
Restore cram-context MLDUnitSetting : 'Required'
|
||||
$ wifi_dm "Radio.*.IEEE80211be.MLDUnitSetting='Required'" "WiFi." "ba-cli"
|
||||
WiFi.Radio.1.IEEE80211be.MLDUnitSetting="Required"
|
||||
WiFi.Radio.2.IEEE80211be.MLDUnitSetting="Required"
|
||||
WiFi.Radio.3.IEEE80211be.MLDUnitSetting="Required"
|
||||
|
||||
Restore MLDUnit to defaults
|
||||
$ set_ssid_mldunit prplOS 0
|
||||
0
|
||||
0
|
||||
0
|
||||
|
||||
$ set_ssid_mldunit prplOS-guest 1
|
||||
1
|
||||
1
|
||||
1
|
||||
|
||||
backhaul SSIDs are instantiated with exact indexes by 33_wld-custom-prplmeshVapsConfiguration.odl
|
||||
$ wifi_dm "SSID.16.MLDUnit=2" "WiFi." "ba-cli"
|
||||
WiFi.SSID.16.MLDUnit=2
|
||||
|
||||
$ wifi_dm "SSID.17.MLDUnit=2" "WiFi." "ba-cli"
|
||||
WiFi.SSID.17.MLDUnit=2
|
||||
|
||||
$ wifi_dm "SSID.18.MLDUnit=2" "WiFi." "ba-cli"
|
||||
WiFi.SSID.18.MLDUnit=2
|
||||
Loading…
Reference in New Issue
Block a user