mirror of
				https://git.kernel.org/pub/scm/network/wireless/iwd.git
				synced 2025-10-30 20:37:26 +01:00 
			
		
		
		
	 5bc6e986e4
			
		
	
	
		5bc6e986e4
		
	
	
	
	
		
			
			1) Renamed the test to reflect the usage of PEAP 2) Prevented the creation of an extra instance of iwd 3) Refactored to start catching the exceptions and properly dispose an instance of iwd 4) Switched to list_devices with wait option
		
			
				
	
	
		
			68 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| #!/usr/bin/python3
 | |
| 
 | |
| import unittest
 | |
| import sys
 | |
| import time
 | |
| 
 | |
| sys.path.append('../util')
 | |
| import iwd
 | |
| from iwd import IWD
 | |
| from iwd import NetworkType
 | |
| 
 | |
| class Test(unittest.TestCase):
 | |
| 
 | |
|     def validate_connection(self, wd):
 | |
|         devices = wd.list_devices(True);
 | |
| 
 | |
|         self.assertIsNotNone(devices)
 | |
|         device = devices[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-PEAPv1-GTC')
 | |
|         self.assertEqual(ordered_network.type, NetworkType.eap)
 | |
| 
 | |
|         condition = 'not obj.connected'
 | |
|         wd.wait_for_object_condition(ordered_network.network_object, condition)
 | |
| 
 | |
|         ordered_network.network_object.connect()
 | |
| 
 | |
|         condition = 'obj.connected'
 | |
|         wd.wait_for_object_condition(ordered_network.network_object, condition)
 | |
| 
 | |
|         device.disconnect()
 | |
| 
 | |
|         condition = 'not obj.connected'
 | |
|         wd.wait_for_object_condition(ordered_network.network_object, condition)
 | |
| 
 | |
|     def test_connection_success(self):
 | |
|         wd = IWD(True)
 | |
| 
 | |
|         try:
 | |
|             self.validate_connection(wd)
 | |
|         except:
 | |
|             del wd
 | |
|             raise
 | |
| 
 | |
|         del wd
 | |
| 
 | |
|     @classmethod
 | |
|     def setUpClass(cls):
 | |
|         IWD.copy_to_storage('ssidEAP-PEAPv1-GTC.8021x')
 | |
| 
 | |
|     @classmethod
 | |
|     def tearDownClass(cls):
 | |
|         IWD.clear_storage()
 | |
| 
 | |
| if __name__ == '__main__':
 | |
|     unittest.main(exit=True)
 |