# SPDX-License-Identifier: BSD-3-Clause --- - hosts: all name: Setup for test running tasks: - name: Install EPEL on enterprise Linux for python2-mock command: yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-{{ ansible_distribution_major_version }}.noarch.rpm when: - ansible_distribution in ['RedHat', 'CentOS'] - ansible_distribution_major_version in ['6', '7'] - package: name: "{{ item }}" state: present ignore_errors: true loop: - NetworkManager-libnm - python2-gobject-base - python3-gobject-base - python-gobject-base - python2-mock - hosts: all name: execute python unit tests tasks: - copy: src: "{{ item }}" dest: /tmp/test-unit-1/ loop: - ../library/network_connections.py - test_network_connections.py - ../module_utils/network_lsr - file: state: directory dest: /tmp/test-unit-1/helpers - copy: src: "{{ item }}" dest: /tmp/test-unit-1/helpers mode: 0755 with_fileglob: - helpers/* - command: python2 --version ignore_errors: true register: python2_available - command: python2 /tmp/test-unit-1/test_network_connections.py --verbose when: python2_available is succeeded register: python2_result - command: python3 --version ignore_errors: true register: python3_available - command: python3 /tmp/test-unit-1/test_network_connections.py --verbose when: python3_available is succeeded register: python3_result - debug: var: python2_result.stderr_lines when: python2_result is succeeded - debug: var: python3_result.stderr_lines when: python3_result is succeeded - fail: msg: Tests did not run with python2 or python3 when: not (python2_available is succeeded or python3_available is succeeded)