From 20ca7ac841472e7cd2e22607b4d6151ef6afb3a6 Mon Sep 17 00:00:00 2001 From: Tim Kourt Date: Tue, 4 Oct 2016 16:26:43 -0700 Subject: [PATCH] auto-t: Add test for the known networks --- autotests/testKnownNetworks/hw.conf | 6 ++ .../testKnownNetworks/known_network_test.py | 71 +++++++++++++++++++ .../known_networks/ssidEAP-TLS.8021x | 6 ++ .../known_networks/ssidOpen.open | 0 .../known_networks/ssidTKIP.psk | 2 + autotests/testKnownNetworks/ssidNew.conf | 3 + 6 files changed, 88 insertions(+) create mode 100644 autotests/testKnownNetworks/hw.conf create mode 100644 autotests/testKnownNetworks/known_network_test.py create mode 100644 autotests/testKnownNetworks/known_networks/ssidEAP-TLS.8021x create mode 100644 autotests/testKnownNetworks/known_networks/ssidOpen.open create mode 100644 autotests/testKnownNetworks/known_networks/ssidTKIP.psk create mode 100644 autotests/testKnownNetworks/ssidNew.conf diff --git a/autotests/testKnownNetworks/hw.conf b/autotests/testKnownNetworks/hw.conf new file mode 100644 index 00000000..94811949 --- /dev/null +++ b/autotests/testKnownNetworks/hw.conf @@ -0,0 +1,6 @@ +[SETUP] +num_radios=2 +start_iwd=0 + +[HOSTAPD] +rad0=ssidNew.conf diff --git a/autotests/testKnownNetworks/known_network_test.py b/autotests/testKnownNetworks/known_network_test.py new file mode 100644 index 00000000..87d9f3e6 --- /dev/null +++ b/autotests/testKnownNetworks/known_network_test.py @@ -0,0 +1,71 @@ +#!/usr/bin/python3 + +import unittest +import sys + +sys.path.append('../util') +import iwd +from iwd import IWD + +class Test(unittest.TestCase): + + def connect_to_new_network(self, wd): + devices = wd.list_devices(); + self.assertIsNotNone(devices) + device = devices[0] + + 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, "ssidNew") + + 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_list_removal_and_addition(self): + wd = IWD(start_iwd_daemon = True) + + known_networks = wd.list_known_networks() + self.assertEqual(len(known_networks), 3) + + wd.forget_known_network(known_networks[0]) + + known_networks = wd.list_known_networks() + self.assertEqual(len(known_networks), 2) + + self.connect_to_new_network(wd) + + known_networks = wd.list_known_networks() + self.assertEqual(len(known_networks), 3) + + for net in known_networks: + wd.forget_known_network(net) + + known_networks = wd.list_known_networks() + self.assertEqual(len(known_networks), 0) + + @classmethod + def setUpClass(cls): + IWD.copy_to_storage('known_networks/ssidOpen.open') + IWD.copy_to_storage('known_networks/ssidTKIP.psk') + IWD.copy_to_storage('known_networks/ssidEAP-TLS.8021x') + + @classmethod + def tearDownClass(cls): + IWD.clear_storage() + +if __name__ == '__main__': + unittest.main(exit=True) diff --git a/autotests/testKnownNetworks/known_networks/ssidEAP-TLS.8021x b/autotests/testKnownNetworks/known_networks/ssidEAP-TLS.8021x new file mode 100644 index 00000000..fe8a2e46 --- /dev/null +++ b/autotests/testKnownNetworks/known_networks/ssidEAP-TLS.8021x @@ -0,0 +1,6 @@ +[Security] +EAP-Method=TLS +EAP-TLS-CACert=/tmp/certs/cert-ca.pem +EAP-TLS-ClientCert=/tmp/certs/cert-client.pem +EAP-TLS-ClientKey=/tmp/certs/cert-client-key-pkcs8.pem +EAP-Identity=abc@example.com diff --git a/autotests/testKnownNetworks/known_networks/ssidOpen.open b/autotests/testKnownNetworks/known_networks/ssidOpen.open new file mode 100644 index 00000000..e69de29b diff --git a/autotests/testKnownNetworks/known_networks/ssidTKIP.psk b/autotests/testKnownNetworks/known_networks/ssidTKIP.psk new file mode 100644 index 00000000..b2fb3bc5 --- /dev/null +++ b/autotests/testKnownNetworks/known_networks/ssidTKIP.psk @@ -0,0 +1,2 @@ +[Security] +PreSharedKey=3397a05e2cf7b50a179ecc876422a40c84626d7eb3261d9baa080032b843f066 diff --git a/autotests/testKnownNetworks/ssidNew.conf b/autotests/testKnownNetworks/ssidNew.conf new file mode 100644 index 00000000..4b4c2673 --- /dev/null +++ b/autotests/testKnownNetworks/ssidNew.conf @@ -0,0 +1,3 @@ +hw_mode=g +channel=1 +ssid=ssidNew