new file mode 100644
@@ -0,0 +1,2 @@
+[Security]
+Passphrase=Password2
@@ -1,6 +1,7 @@
#! /usr/bin/python3
import unittest
+import os
from iwd import IWD
from config import ctx
@@ -8,6 +9,8 @@ from validation import validate, client_connect
class Test(unittest.TestCase):
def test_connection_success(self):
+ IWD.copy_to_storage('TestAP1.psk')
+
wd = IWD(True)
dev1, dev2 = wd.list_devices(2)
@@ -22,6 +25,8 @@ class Test(unittest.TestCase):
client_connect(wd, dev1, 'TestAP1')
def test_client_start_ap(self):
+ IWD.copy_to_storage('TestAP1.psk')
+
wd = IWD(True)
dev1, dev2 = wd.list_devices(2)
@@ -39,12 +44,33 @@ class Test(unittest.TestCase):
validate(wd, dev2, dev1, 'TestAP2', 'Password2')
- @classmethod
- def setUpClass(cls):
- IWD.copy_to_storage('TestAP1.psk')
+ def test_valid_ciphers(self):
+ ciphers = ['TKIP', 'CCMP-128', 'GCMP-128', 'CCMP-256', 'GCMP-256']
+
+ for group in ciphers:
+ for pairwise in ciphers:
+ IWD.copy_to_ap('TestAP2.ap')
+ os.system('echo "PairwiseCiphers=%s" >> /tmp/iwd/ap/TestAP2.ap' % pairwise)
+ os.system('echo "GroupCipher=%s" >> /tmp/iwd/ap/TestAP2.ap' % group)
+
+ wd = IWD(True)
+
+ dev1, dev2 = wd.list_devices(2)
+
+ dev1.start_ap('TestAP2')
+
+ self.assertTrue(dev1.group_cipher == group)
+ self.assertTrue(dev1.pairwise_ciphers == pairwise)
+
+ try:
+ validate(wd, dev2, dev1, 'TestAP2', 'Password2', ip_checks=False)
+ except:
+ raise Exception("Failed with pairwise=%s group=%s" % (pairwise, group))
+ finally:
+ IWD.clear_storage()
+ del wd
- @classmethod
- def tearDownClass(cls):
+ def tearDown(self):
IWD.clear_storage()
if __name__ == '__main__':