Skip to content

Commit

Permalink
test: Clean up mock wifi at the end of each wireless test
Browse files Browse the repository at this point in the history
Baseos CI runs different wireless tests in a sequence, the mock wifi
needs to be cleaned up properly at the end of each wireless test,
otherwise, it will cause the failure during the setup of mock wifi
for the next wireless test.

Signed-off-by: Wen Liang <[email protected]>
  • Loading branch information
liangwen12year committed Jan 26, 2024
1 parent 4f11374 commit a66c022
Show file tree
Hide file tree
Showing 2 changed files with 76 additions and 43 deletions.
37 changes: 26 additions & 11 deletions tests/playbooks/tests_wireless_wpa3_owe.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,15 +33,30 @@
ssid: "hostapd-owe"
key_mgmt: "owe"

- name: "Verify connection profile"
shell:
nmcli c show {{ interface }} | grep 802-11-wireless-security.key-mgmt
register: key_mgmt
ignore_errors: true
changed_when: false
- name: "Verify connection profile"
shell: nmcli c show {{ interface }} | grep 802-11-wireless-security.key-mgmt
register: key_mgmt
ignore_errors: true
changed_when: false

- name: "Assert that OWE is configured correctly"
assert:
that:
- "'owe' in key_mgmt.stdout"
msg: "OWE is configured incorrectly"
- name: "Assert that OWE is configured correctly"
assert:
that:
- "'owe' in key_mgmt.stdout"
msg: "OWE is configured incorrectly"
always:
- name: Clean up the test device and the connection profile
tags:
- "tests::cleanup"
block:
- name: Import network role
import_role:
name: linux-system-roles.network
vars:
network_connections:
- name: "{{ interface }}"
persistent_state: absent
state: down
failed_when: false
- name: Include the task 'cleanup_mock_wifi.yml'
include_tasks: tasks/cleanup_mock_wifi.yml
82 changes: 50 additions & 32 deletions tests/playbooks/tests_wireless_wpa3_sae.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,37 +9,55 @@
include_tasks: tasks/setup_mock_wifi_wpa3_sae.yml
when: ansible_distribution in ['CentOS', 'Fedora']

- name: "TEST: wireless connection with WPA3 Personal"
import_role:
name: linux-system-roles.network
vars:
network_allow_restart: true
network_connections:
- name: "{{ interface }}"
# set `state: down` on RHEL 8 since we failed in setting up mock
# wifi on RHEL 8
state: "{{ 'down' if ansible_distribution == 'RedHat' else 'up' }}"
type: wireless
ip:
address:
- 203.0.113.2/24
dhcp4: "no"
auto6: "no"
wireless:
ssid: "hostapd-sae"
key_mgmt: "sae"
password: "p@55w0rD"
- name: Test wireless connection with WPA3 Personal
block:
- name: "TEST: wireless connection with WPA3 Personal"
import_role:
name: linux-system-roles.network
vars:
network_allow_restart: true
network_connections:
- name: "{{ interface }}"
# set `state: down` on RHEL 8 since we failed in setting up mock
# wifi on RHEL 8
state: "{{ 'down' if ansible_distribution == 'RedHat' else 'up' }}"
type: wireless
ip:
address:
- 203.0.113.2/24
dhcp4: "no"
auto6: "no"
wireless:
ssid: "hostapd-sae"
key_mgmt: "sae"
password: "p@55w0rD"

- name: Verify wireless profile KEY_MGMT entry
shell: |
set -euxo pipefail
nmcli c show {{ interface }} | grep 802-11-wireless-security.key-mgmt
register: key_mgmt
ignore_errors: true
changed_when: false
- name: Verify wireless profile KEY_MGMT entry
shell: |
set -euxo pipefail
nmcli c show {{ interface }} | grep 802-11-wireless-security.key-mgmt
register: key_mgmt
ignore_errors: true
changed_when: false

- name: "Assert that WPA3 Personal is configured correctly"
assert:
that:
- "'sae' in key_mgmt.stdout"
msg: "WPA3 Personal is configured incorrectly"
- name: "Assert that WPA3 Personal is configured correctly"
assert:
that:
- "'sae' in key_mgmt.stdout"
msg: "WPA3 Personal is configured incorrectly"
always:
- name: Clean up the test device and the connection profile
tags:
- "tests::cleanup"
block:
- name: Import network role
import_role:
name: linux-system-roles.network
vars:
network_connections:
- name: "{{ interface }}"
persistent_state: absent
state: down
failed_when: false
- name: Include the task 'cleanup_mock_wifi.yml'
include_tasks: tasks/cleanup_mock_wifi.yml

0 comments on commit a66c022

Please sign in to comment.