2018-07-11 00:47:03 +02:00
|
|
|
#!/usr/bin/python3
|
|
|
|
|
|
|
|
import unittest
|
|
|
|
import sys
|
|
|
|
|
|
|
|
sys.path.append('../util')
|
|
|
|
import iwd
|
|
|
|
import validation
|
2022-06-23 01:02:18 +02:00
|
|
|
from validation import TestHiddenNetworks
|
2018-07-11 00:47:03 +02:00
|
|
|
from iwd import IWD
|
2022-10-06 19:40:39 +02:00
|
|
|
from hostapd import HostapdCLI
|
2018-07-11 00:47:03 +02:00
|
|
|
|
|
|
|
class TestWpaNetwork(unittest.TestCase):
|
|
|
|
'''
|
2024-11-07 14:26:12 +01:00
|
|
|
The below test cases excesise the following connection scenarios:
|
2018-07-11 00:47:03 +02:00
|
|
|
|
|
|
|
Network config is
|
2019-10-24 19:53:23 +02:00
|
|
|
present at start time: Connect: AutoConnect: Result:
|
2018-07-11 00:47:03 +02:00
|
|
|
--------------------------------------------------------------------------
|
|
|
|
False True NotFoundEx raised
|
|
|
|
False True ServiceSetOverlapEx raised
|
|
|
|
False True NotHiddenEx raised
|
|
|
|
True True AlreadyProvisionedEx raised
|
|
|
|
'''
|
|
|
|
|
|
|
|
def test_wpa(self):
|
2022-06-23 01:02:18 +02:00
|
|
|
tca = TestHiddenNetworks()
|
2018-07-11 00:47:03 +02:00
|
|
|
|
|
|
|
tca.validate('UnExistingNetwork', False, iwd.NotFoundEx)
|
|
|
|
tca.validate('ssidOverlap', False, iwd.ServiceSetOverlapEx)
|
|
|
|
tca.validate('ssidOpen', False, iwd.NotHiddenEx, False, True)
|
|
|
|
tca.validate('ssidAlreadyKnown', False, iwd.AlreadyProvisionedEx)
|
|
|
|
|
|
|
|
@classmethod
|
|
|
|
def setUpClass(cls):
|
|
|
|
IWD.copy_to_storage('ssidAlreadyKnown.open')
|
|
|
|
|
2022-10-06 19:40:39 +02:00
|
|
|
cls.disabled = [HostapdCLI('ssidHiddenOpen.conf'),
|
|
|
|
HostapdCLI('ssidHiddenWPA.conf'),
|
|
|
|
HostapdCLI('ssidSomeHidden.conf')]
|
|
|
|
|
|
|
|
for hapd in cls.disabled:
|
|
|
|
hapd.disable()
|
|
|
|
|
2018-07-11 00:47:03 +02:00
|
|
|
@classmethod
|
|
|
|
def tearDownClass(cls):
|
|
|
|
IWD.clear_storage()
|
|
|
|
|
2022-10-06 19:40:39 +02:00
|
|
|
for hapd in cls.disabled:
|
|
|
|
hapd.reload()
|
|
|
|
|
2018-07-11 00:47:03 +02:00
|
|
|
if __name__ == '__main__':
|
|
|
|
unittest.main(exit=True)
|