mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-20 04:19:25 +01:00
c961dafc50
This test made it past the initial refactor to use HostapdCLI with the 'config' parameter. This avoids the need to iterate the hostapd map in the actual test.
67 lines
1.6 KiB
Python
67 lines
1.6 KiB
Python
#!/usr/bin/python3
|
|
|
|
import unittest
|
|
import sys
|
|
|
|
sys.path.append('../util')
|
|
import iwd
|
|
import testutil
|
|
from iwd import IWD
|
|
from iwd import PSKAgent
|
|
from iwd import NetworkType
|
|
|
|
from hostapd import HostapdCLI
|
|
|
|
class Test(unittest.TestCase):
|
|
|
|
def validate_connection(self, wd):
|
|
hostapd = HostapdCLI(config='ssidEAP-TTLS-MSCHAPv2.conf')
|
|
|
|
self.assertIsNotNone(hostapd)
|
|
|
|
psk_agent = PSKAgent('abc', ('user', 'incorrect_password'))
|
|
wd.register_psk_agent(psk_agent)
|
|
|
|
device = wd.list_devices(1)[0];
|
|
|
|
condition = 'not obj.scanning'
|
|
wd.wait_for_object_condition(device, condition)
|
|
|
|
device.scan()
|
|
|
|
condition = 'not obj.scanning'
|
|
wd.wait_for_object_condition(device, condition)
|
|
|
|
ordered_networks = device.get_ordered_networks()
|
|
ordered_network = ordered_networks[0]
|
|
|
|
self.assertEqual(ordered_network.name, "ssidEAP-TTLS-MSCHAPv2")
|
|
self.assertEqual(ordered_network.type, NetworkType.eap)
|
|
|
|
condition = 'not obj.connected'
|
|
wd.wait_for_object_condition(ordered_network.network_object, condition)
|
|
|
|
with self.assertRaises(iwd.FailedEx):
|
|
ordered_network.network_object.connect()
|
|
|
|
wd.unregister_psk_agent(psk_agent)
|
|
|
|
def test_connection_success(self):
|
|
wd = IWD(True)
|
|
|
|
try:
|
|
self.validate_connection(wd)
|
|
finally:
|
|
del wd
|
|
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
IWD.copy_to_storage('ssidEAP-TTLS-MSCHAPv2.8021x')
|
|
|
|
@classmethod
|
|
def tearDownClass(cls):
|
|
IWD.clear_storage()
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main(exit=True)
|