Add tests for SSIDs with space

This commit is contained in:
Nathan Marley 2026-07-14 11:26:34 -07:00
parent 12baa2e64a
commit 9963c4c770
No known key found for this signature in database
GPG Key ID: A9814C26EFF8C7D5
1 changed files with 60 additions and 0 deletions

View File

@ -0,0 +1,60 @@
from archinstall.lib.models.network import WifiNetwork
SAMPLE_SCAN_RESULTS = """bssid / frequency / signal level / flags / ssid
aa:bb:cc:dd:ee:01 2412 -40 [WPA2-PSK-CCMP][ESS] NoSpacesSSID
aa:bb:cc:dd:ee:02 2412 -50 [WPA2-PSK-CCMP][ESS] My Home Network
aa:bb:cc:dd:ee:03 5180 -60 [WPA2-PSK-CCMP][WPS][ESS] Free Public WiFi
aa:bb:cc:dd:ee:04 2412 -70 [WPA2-PSK-CCMP][ESS]
"""
def test_from_wpa_ssid_without_spaces() -> None:
networks = WifiNetwork.from_wpa(SAMPLE_SCAN_RESULTS)
ssids = [network.ssid for network in networks]
assert 'NoSpacesSSID' in ssids
def test_from_wpa_ssid_with_spaces() -> None:
networks = WifiNetwork.from_wpa(SAMPLE_SCAN_RESULTS)
ssids = [network.ssid for network in networks]
assert 'My Home Network' in ssids
def test_from_wpa_ssid_with_multiple_spaces() -> None:
networks = WifiNetwork.from_wpa(SAMPLE_SCAN_RESULTS)
ssids = [network.ssid for network in networks]
assert 'Free Public WiFi' in ssids
def test_from_wpa_empty_ssid() -> None:
networks = WifiNetwork.from_wpa(SAMPLE_SCAN_RESULTS)
empty = [network for network in networks if network.bssid == 'aa:bb:cc:dd:ee:04']
assert len(empty) == 1
assert empty[0].ssid == ''
def test_from_wpa_skips_header_and_blank_lines() -> None:
results = """
bssid / frequency / signal level / flags / ssid
aa:bb:cc:dd:ee:01 2412 -40 [WPA2-PSK-CCMP][ESS] SimpleNet
"""
networks = WifiNetwork.from_wpa(results)
assert len(networks) == 1
assert networks[0].ssid == 'SimpleNet'
assert networks[0].bssid == 'aa:bb:cc:dd:ee:01'
def test_from_wpa_preserves_flags_and_fields() -> None:
networks = WifiNetwork.from_wpa(SAMPLE_SCAN_RESULTS)
network = next(n for n in networks if n.ssid == 'My Home Network')
assert network.bssid == 'aa:bb:cc:dd:ee:02'
assert network.frequency == '2412'
assert network.signal_level == '-50'
assert network.flags == '[WPA2-PSK-CCMP][ESS]'