Port eos tests to network_cli (#33586)

* Add eos and fix tests to run multiple connections

* Update tests to report connection

* Add missing START messages

* Fix unspecified connection

* Python 3 updates

Exceptions don't have `.message` in Python 3

* Override `become` when using `connection=local`

* Slight restructuring to make eapi easier later on

* Move eapi toggle to prepare_eos
* Pull out connection on eapi tasks
This commit is contained in:
Nathaniel Case 2017-12-19 15:49:49 -05:00 committed by GitHub
commit 513c75079e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
70 changed files with 393 additions and 249 deletions

View file

@ -4,12 +4,19 @@
paths: "{{ role_path }}/tests/cli"
patterns: "{{ testcase }}.yaml"
register: test_cases
delegate_to: localhost
- name: set test_items
set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}"
- name: run test case
include: "{{ test_case_to_run }}"
- name: run test cases (connection=network_cli)
include: "{{ test_case_to_run }} ansible_connection=network_cli"
with_items: "{{ test_items }}"
loop_control:
loop_var: test_case_to_run
- name: run test case (connection=local)
include: "{{ test_case_to_run }} ansible_connection=local ansible_become=no"
with_first_found: "{{ test_items }}"
loop_control:
loop_var: test_case_to_run

View file

@ -3,26 +3,14 @@
find:
paths: "{{ role_path }}/tests/eapi"
patterns: "{{ testcase }}.yaml"
delegate_to: localhost
register: test_cases
- name: set test_items
set_fact: test_items="{{ test_cases.files | map(attribute='path') | list }}"
- name: enable eapi
eos_eapi:
http: yes
https: yes
local_http: no
enable_socket: yes
provider: "{{ cli }}"
- name: run test case
include: "{{ test_case_to_run }}"
- name: run test case (connection=local)
include: "{{ test_case_to_run }} ansible_connection=local"
with_items: "{{ test_items }}"
loop_control:
loop_var: test_case_to_run
- name: disable eapi
eos_eapi:
state: stopped
provider: "{{ cli }}"

View file

@ -1,5 +1,5 @@
---
- debug: msg="START cli/all_facts.yaml"
- debug: msg="START cli/all_facts.yaml on connection={{ ansible_connection }}"
- name: test getting all facts
@ -7,6 +7,7 @@
provider: "{{ cli }}"
gather_subset:
- all
become: yes
register: result
@ -28,4 +29,4 @@
- "result.ansible_facts.ansible_net_memfree_mb > 1"
- "result.ansible_facts.ansible_net_memtotal_mb > 1"
- debug: msg="END cli/all_facts.yaml"
- debug: msg="END cli/all_facts.yaml on connection={{ ansible_connection }}"

View file

@ -1,10 +1,11 @@
---
- debug: msg="START cli/default_facts.yaml"
- debug: msg="START cli/default_facts.yaml on connection={{ ansible_connection }}"
- name: test getting default facts
eos_facts:
provider: "{{ cli }}"
become: yes
register: result
- assert:
@ -28,4 +29,4 @@
# ... and not present
- "result.ansible_facts.ansible_net_config is not defined" # config
- debug: msg="END cli/default.yaml"
- debug: msg="END cli/default.yaml on connection={{ ansible_connection }}"

View file

@ -1,5 +1,5 @@
---
- debug: msg="START cli/invalid_subset.yaml"
- debug: msg="START cli/invalid_subset.yaml on connection={{ ansible_connection }}"
- name: test invalid subset (foobar)
@ -45,4 +45,4 @@
- debug: msg="END cli/invalid_subset.yaml"
- debug: msg="END cli/invalid_subset.yaml on connection={{ ansible_connection }}"

View file

@ -1,5 +1,5 @@
---
- debug: msg="START cli/not_hardware_facts.yaml"
- debug: msg="START cli/not_hardware_facts.yaml on connection={{ ansible_connection }}"
- name: test not hardware
@ -7,6 +7,7 @@
provider: "{{ cli }}"
gather_subset:
- "!hardware"
become: yes
register: result
- assert:
@ -27,4 +28,4 @@
# ... and not present
- "result.ansible_facts.ansible_net_filesystems is not defined"
- debug: msg="END cli/not_hardware_facts.yaml"
- debug: msg="END cli/not_hardware_facts.yaml on connection={{ ansible_connection }}"