summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorGaige B Paulsen <gaige@cluetrust.com>2025-02-07 14:11:19 -0500
committerGitHub <noreply@github.com>2025-02-07 11:11:19 -0800
commitd75becb8e46d764552b0df605ef9192592ae2633 (patch)
tree1a8d98cfd62ee956017302685d6e0d0453833764 /tests
parent4b1cc399b285fbf3f2535424b444d8d3282515c5 (diff)
downloadvyos.vyos-d75becb8e46d764552b0df605ef9192592ae2633.tar.gz
vyos.vyos-d75becb8e46d764552b0df605ef9192592ae2633.zip
T7011: fix: lldp global integration (#385)
* T7011: fix: lldp global integration * T7011: Fix lldp interfaces integration
Diffstat (limited to 'tests')
-rw-r--r--tests/integration/targets/vyos_lldp_global/tests/cli/deleted.yaml8
-rw-r--r--tests/integration/targets/vyos_lldp_global/tests/cli/merged.yaml8
-rw-r--r--tests/integration/targets/vyos_lldp_global/tests/cli/replaced.yaml8
-rw-r--r--tests/integration/targets/vyos_lldp_global/tests/cli/rtt.yaml4
-rw-r--r--tests/integration/targets/vyos_lldp_global/vars/main.yaml28
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/_parsed_config.cfg3
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate.yaml19
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate_intf.yaml10
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/_remove_config.yaml6
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/gathered.yaml2
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/merged.yaml14
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/overridden.yaml8
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/parsed.yaml2
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/rendered.yaml8
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/replaced.yaml14
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/tests/cli/rtt.yaml10
-rw-r--r--tests/integration/targets/vyos_lldp_interfaces/vars/main.yaml47
-rw-r--r--tests/unit/modules/network/vyos/fixtures/vyos_lldp_global_config.cfg4
-rw-r--r--tests/unit/modules/network/vyos/test_vyos_lldp_global.py139
19 files changed, 221 insertions, 121 deletions
diff --git a/tests/integration/targets/vyos_lldp_global/tests/cli/deleted.yaml b/tests/integration/targets/vyos_lldp_global/tests/cli/deleted.yaml
index 9cf87b8..66c792c 100644
--- a/tests/integration/targets/vyos_lldp_global/tests/cli/deleted.yaml
+++ b/tests/integration/targets/vyos_lldp_global/tests/cli/deleted.yaml
@@ -14,17 +14,17 @@
- name: Assert that the before dicts were correctly generated
assert:
that:
- - "{{ populate == result['before']}}"
+ - populate == result['before']
- name: Assert that the correct set of commands were generated
assert:
that:
- - "{{ deleted['commands'] | symmetric_difference(result['commands']) |length == 0 }}"
+ - deleted['commands'] | symmetric_difference(result['commands']) |length == 0
- name: Assert that the after dicts were correctly generated
assert:
that:
- - "{{ deleted['after'] == result['after']}}"
+ - deleted['after'] == result['after']
- name: Delete attributes of given interfaces (IDEMPOTENT)
register: result
@@ -38,6 +38,6 @@
- name: Assert that the before dicts were correctly generated
assert:
that:
- - "{{ deleted['after'] == result['before'] }}"
+ - deleted['after'] == result['before']
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_global/tests/cli/merged.yaml b/tests/integration/targets/vyos_lldp_global/tests/cli/merged.yaml
index a2e8e6b..915a290 100644
--- a/tests/integration/targets/vyos_lldp_global/tests/cli/merged.yaml
+++ b/tests/integration/targets/vyos_lldp_global/tests/cli/merged.yaml
@@ -17,17 +17,17 @@
- name: Assert that before dicts were correctly generated
assert:
- that: "{{ merged['before'] == result['before'] }}"
+ that: merged['before'] == result['before']
- name: Assert that correct set of commands were generated
assert:
that:
- - "{{ merged['commands'] | symmetric_difference(result['commands']) |length == 0 }}"
+ - merged['commands'] | symmetric_difference(result['commands']) |length == 0
- name: Assert that after dicts was correctly generated
assert:
that:
- - "{{ merged['after'] == result['after'] }}"
+ - merged['after'] == result['after']
- name: Merge the provided configuration with the existing running configuration (IDEMPOTENT)
register: result
@@ -41,6 +41,6 @@
- name: Assert that before dicts were correctly generated
assert:
that:
- - "{{ merged['after'] == result['before'] }}"
+ - merged['after'] == result['before']
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_global/tests/cli/replaced.yaml b/tests/integration/targets/vyos_lldp_global/tests/cli/replaced.yaml
index c74aa46..ad0f53b 100644
--- a/tests/integration/targets/vyos_lldp_global/tests/cli/replaced.yaml
+++ b/tests/integration/targets/vyos_lldp_global/tests/cli/replaced.yaml
@@ -19,17 +19,17 @@
- name: Assert that correct set of commands were generated
assert:
that:
- - "{{ replaced['commands'] | symmetric_difference(result['commands']) |length == 0 }}"
+ - replaced['commands'] | symmetric_difference(result['commands']) |length == 0
- name: Assert that before dicts are correctly generated
assert:
that:
- - "{{ populate == result['before'] }}"
+ - populate == result['before']
- name: Assert that after dict is correctly generated
assert:
that:
- - "{{ replaced['after'] == result['after'] }}"
+ - replaced['after'] == result['after']
- name: Replace device configurations of LLDP service with provided configurarions (IDEMPOTENT)
register: result
@@ -43,6 +43,6 @@
- name: Assert that before dict is correctly generated
assert:
that:
- - "{{ replaced['after'] == result['before'] }}"
+ - replaced['after'] == result['before']
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_global/tests/cli/rtt.yaml b/tests/integration/targets/vyos_lldp_global/tests/cli/rtt.yaml
index 10fe454..d4ea595 100644
--- a/tests/integration/targets/vyos_lldp_global/tests/cli/rtt.yaml
+++ b/tests/integration/targets/vyos_lldp_global/tests/cli/rtt.yaml
@@ -35,7 +35,7 @@
- name: Assert that changes were applied
assert:
- that: "{{ round_trip['after'] == result['after'] }}"
+ that: round_trip['after'] == result['after']
- name: Revert back to base config using facts round trip
register: revert
@@ -45,6 +45,6 @@
- name: Assert that config was reverted
assert:
- that: "{{ base_config['after'] == revert['after'] }}"
+ that: base_config['after'] == revert['after']
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_global/vars/main.yaml b/tests/integration/targets/vyos_lldp_global/vars/main.yaml
index 622b8e4..dbfe1f3 100644
--- a/tests/integration/targets/vyos_lldp_global/vars/main.yaml
+++ b/tests/integration/targets/vyos_lldp_global/vars/main.yaml
@@ -1,7 +1,8 @@
---
merged:
before:
- address: 192.0.2.17
+ addresses:
+ - 192.0.2.17
enable: true
legacy_protocols:
- cdp
@@ -9,13 +10,16 @@ merged:
- set service lldp management-address '192.0.2.11'
- set service lldp legacy-protocols 'fdp'
after:
- address: 192.0.2.11
+ addresses:
+ - 192.0.2.17
+ - 192.0.2.11
enable: true
legacy_protocols:
- cdp
- fdp
populate:
- address: 192.0.2.17
+ addresses:
+ - 192.0.2.17
enable: true
legacy_protocols:
- cdp
@@ -24,8 +28,10 @@ replaced:
- set service lldp legacy-protocols 'edp'
- set service lldp legacy-protocols 'sonmp'
- set service lldp management-address '192.0.2.14'
+ - delete service lldp management-address '192.0.2.17'
after:
- address: 192.0.2.14
+ addresses:
+ - 192.0.2.14
enable: true
legacy_protocols:
- cdp
@@ -33,7 +39,8 @@ replaced:
- sonmp
parsed:
after:
- address: 192.0.2.17
+ addresses:
+ - 192.0.2.17
enable: true
legacy_protocols:
- fdp
@@ -45,13 +52,14 @@ rendered:
- set service lldp management-address '192.0.2.17'
deleted:
commands:
- - delete service lldp management-address
- - delete service lldp legacy-protocols
- after:
- enable: true
+ - delete service lldp
+ after: []
+
round_trip:
after:
- address: 192.0.2.14
+ addresses:
+ - 192.0.2.11
+ - 192.0.2.14
enable: true
legacy_protocols:
- cdp
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_parsed_config.cfg b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_parsed_config.cfg
index 737449c..767daca 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_parsed_config.cfg
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_parsed_config.cfg
@@ -1,5 +1,4 @@
-set service lldp interface eth1 location civic-based ca-type 0 ca-value 'ENGLISH'
-set service lldp interface eth1 location civic-based country-code 'US'
+set service lldp interface eth1 location elin '0000000911'
set service lldp interface eth2 location coordinate-based altitude '2200'
set service lldp interface eth2 location coordinate-based datum 'WGS84'
set service lldp interface eth2 location coordinate-based latitude '33.524449N'
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate.yaml
index 5ed9e98..21f8dd2 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate.yaml
@@ -2,15 +2,12 @@
- ansible.builtin.include_tasks: _remove_config.yaml
- name: Setup
- vars:
- lines: >-
- "set service lldp interface eth1\nset service lldp interface eth1 location
- civic-based country-code US\nset service lldp interface eth1 location
- civic-based ca-type 0 ca-value ENGLISH\nset service lldp interface
- eth2\nset service lldp interface eth2 location coordinate-based latitude
- 33.524449N\nset service lldp interface eth2 location coordinate-based
- altitude 2200\nset service lldp interface eth2 location coordinate-based
- datum WGS84\nset service lldp interface eth2 location coordinate-based
- longitude 222.267255W\n"
ansible.netcommon.cli_config:
- config: "{{ lines }}"
+ config: |-
+ set service lldp interface eth1
+ set service lldp interface eth1 location elin '0000000911'
+ set service lldp interface eth2
+ set service lldp interface eth2 location coordinate-based latitude 33.524449N
+ set service lldp interface eth2 location coordinate-based altitude 2200
+ set service lldp interface eth2 location coordinate-based datum WGS84
+ set service lldp interface eth2 location coordinate-based longitude 222.267255W
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate_intf.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate_intf.yaml
index c1e3a8c..334b205 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate_intf.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_populate_intf.yaml
@@ -1,10 +1,8 @@
---
- name: Setup
vars:
- lines: >-
- "set service lldp interface eth2
- \nset service lldp interface eth2 location civic-based country-code US
- \nset service lldp interface eth2 location civic-based ca-type 0 ca-value ENGLISH
- \nset service lldp interface eth2 disable"
ansible.netcommon.cli_config:
- config: "{{ lines }}"
+ config: |-
+ set service lldp interface eth2
+ set service lldp interface eth2 location elin '0000000911'
+ set service lldp interface eth2 disable
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_remove_config.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_remove_config.yaml
index c8ab352..abd81ed 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_remove_config.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/_remove_config.yaml
@@ -1,6 +1,6 @@
---
- name: Remove Config
- vars:
- lines: "delete service lldp interface\ndelete service lldp\n"
ansible.netcommon.cli_config:
- config: "{{ lines }}"
+ config: |-
+ delete service lldp interface
+ delete service lldp
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/gathered.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/gathered.yaml
index 7b8e778..17e660b 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/gathered.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/gathered.yaml
@@ -14,6 +14,6 @@
- name: Assert that gathered dicts was correctly generated
assert:
that:
- - "{{ populate | symmetric_difference(result['gathered']) |length == 0 }}"
+ - populate | symmetric_difference(result['gathered']) |length == 0
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/merged.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/merged.yaml
index ecf7597..4a8d877 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/merged.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/merged.yaml
@@ -11,11 +11,7 @@
config:
- name: eth1
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: 0000000911
- name: eth2
location:
@@ -28,17 +24,17 @@
- name: Assert that before dicts were correctly generated
assert:
- that: "{{ merged['before'] | symmetric_difference(result['before']) |length == 0 }}"
+ that: merged['before'] | symmetric_difference(result['before']) |length == 0
- name: Assert that correct set of commands were generated
assert:
that:
- - "{{ merged['commands'] | symmetric_difference(result['commands']) |length == 0 }}"
+ - merged['commands'] | symmetric_difference(result['commands']) |length == 0
- name: Assert that after dicts was correctly generated
assert:
that:
- - "{{ merged['after'] | symmetric_difference(result['after']) |length == 0 }}"
+ - merged['after'] | symmetric_difference(result['after']) |length == 0
- name: Merge the provided configuration with the existing running configuration (IDEMPOTENT)
register: result
@@ -52,6 +48,6 @@
- name: Assert that before dicts were correctly generated
assert:
that:
- - "{{ merged['after'] | symmetric_difference(result['before']) |length == 0 }}"
+ - merged['after'] | symmetric_difference(result['before']) |length == 0
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/overridden.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/overridden.yaml
index 7050481..539b314 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/overridden.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/overridden.yaml
@@ -19,17 +19,17 @@
- name: Assert that before dicts were correctly generated
assert:
that:
- - "{{ populate_intf | symmetric_difference(result['before']) |length == 0 }}"
+ - populate_intf | symmetric_difference(result['before']) |length == 0
- name: Assert that correct commands were generated
assert:
that:
- - "{{ overridden['commands'] | symmetric_difference(result['commands']) |length == 0 }}"
+ - overridden['commands'] | symmetric_difference(result['commands']) |length == 0
- name: Assert that after dicts were correctly generated
assert:
that:
- - "{{ overridden['after'] | symmetric_difference(result['after']) |length == 0 }}"
+ - overridden['after'] | symmetric_difference(result['after']) |length == 0
- name: Overrides all device configuration with provided configurations (IDEMPOTENT)
register: result
@@ -43,6 +43,6 @@
- name: Assert that before dicts were correctly generated
assert:
that:
- - "{{ overridden['after'] | symmetric_difference(result['before']) |length == 0 }}"
+ - overridden['after'] | symmetric_difference(result['before']) |length == 0
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/parsed.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/parsed.yaml
index c312934..0e7b4f0 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/parsed.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/parsed.yaml
@@ -11,4 +11,4 @@
- name: Assert that config was correctly parsed
assert:
that:
- - "{{ parsed['after'] | symmetric_difference(result['parsed']) |length == 0 }}"
+ - parsed['after'] | symmetric_difference(result['parsed']) |length == 0
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/rendered.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/rendered.yaml
index 3eb2538..1a7966f 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/rendered.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/rendered.yaml
@@ -11,11 +11,7 @@
config:
- name: eth1
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: 0000000911
- name: eth2
location:
coordinate_based:
@@ -28,6 +24,6 @@
- name: Assert that correct set of commands were generated
assert:
that:
- - "{{ rendered['commands'] | symmetric_difference(result['rendered']) |length == 0 }}"
+ - rendered['commands'] | symmetric_difference(result['rendered']) |length == 0
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/replaced.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/replaced.yaml
index e914c99..5fe2164 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/replaced.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/replaced.yaml
@@ -12,11 +12,7 @@
- name: eth2
enable: false
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: 0000000911
- name: eth1
enable: false
@@ -31,17 +27,17 @@
- name: Assert that correct set of commands were generated
assert:
that:
- - "{{ replaced['commands'] | symmetric_difference(result['commands']) |length == 0 }}"
+ - replaced['commands'] | symmetric_difference(result['commands']) |length == 0
- name: Assert that before dicts are correctly generated
assert:
that:
- - "{{ populate | symmetric_difference(result['before']) |length == 0 }}"
+ - populate | symmetric_difference(result['before']) |length == 0
- name: Assert that after dict is correctly generated
assert:
that:
- - "{{ replaced['after'] | symmetric_difference(result['after']) |length == 0 }}"
+ - replaced['after'] | symmetric_difference(result['after']) |length == 0
- name: Replace device configurations of listed LLDP interfaces with provided configurarions (IDEMPOTENT)
register: result
@@ -55,6 +51,6 @@
- name: Assert that before dict is correctly generated
assert:
that:
- - "{{ replaced['after'] | symmetric_difference(result['before']) |length == 0 }}"
+ - replaced['after'] | symmetric_difference(result['before']) |length == 0
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/rtt.yaml b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/rtt.yaml
index 6cf5d69..6223985 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/tests/cli/rtt.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/tests/cli/rtt.yaml
@@ -11,11 +11,7 @@
config:
- name: eth1
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: 0000000911
state: merged
- name: Gather lldp_interfaces facts
@@ -40,7 +36,7 @@
- name: Assert that changes were applied
assert:
- that: "{{ round_trip['after'] | symmetric_difference(result['after']) |length == 0 }}"
+ that: round_trip['after'] | symmetric_difference(result['after']) |length == 0
- name: Revert back to base config using facts round trip
register: revert
@@ -50,6 +46,6 @@
- name: Assert that config was reverted
assert:
- that: "{{ base_config['after'] | symmetric_difference(revert['after']) |length == 0 }}"
+ that: base_config['after'] | symmetric_difference(revert['after']) |length == 0
always:
- include_tasks: _remove_config.yaml
diff --git a/tests/integration/targets/vyos_lldp_interfaces/vars/main.yaml b/tests/integration/targets/vyos_lldp_interfaces/vars/main.yaml
index 092f653..ce1567e 100644
--- a/tests/integration/targets/vyos_lldp_interfaces/vars/main.yaml
+++ b/tests/integration/targets/vyos_lldp_interfaces/vars/main.yaml
@@ -2,8 +2,7 @@
merged:
before: []
commands:
- - set service lldp interface eth1 location civic-based country-code 'US'
- - set service lldp interface eth1 location civic-based ca-type 0 ca-value 'ENGLISH'
+ - set service lldp interface eth1 location elin '0000000911'
- set service lldp interface eth1
- set service lldp interface eth2 location coordinate-based latitude '33.524449N'
- set service lldp interface eth2 location coordinate-based altitude '2200'
@@ -13,11 +12,7 @@ merged:
after:
- name: eth1
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: 0000000911
- name: eth2
location:
coordinate_based:
@@ -28,11 +23,7 @@ merged:
populate:
- name: eth1
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: 0000000911
- name: eth2
location:
coordinate_based:
@@ -42,8 +33,7 @@ populate:
latitude: 33.524449N
rendered:
commands:
- - set service lldp interface eth1 location civic-based country-code 'US'
- - set service lldp interface eth1 location civic-based ca-type 0 ca-value 'ENGLISH'
+ - set service lldp interface eth1 location elin '0000000911'
- set service lldp interface eth1
- set service lldp interface eth2 location coordinate-based latitude '33.524449N'
- set service lldp interface eth2 location coordinate-based altitude '2200'
@@ -54,8 +44,7 @@ replaced:
commands:
- delete service lldp interface eth2 location
- set service lldp interface eth2 'disable'
- - set service lldp interface eth2 location civic-based country-code 'US'
- - set service lldp interface eth2 location civic-based ca-type 0 ca-value 'ENGLISH'
+ - set service lldp interface eth2 location elin '0000000911'
- delete service lldp interface eth1 location
- set service lldp interface eth1 'disable'
- set service lldp interface eth1 location coordinate-based latitude '33.524449N'
@@ -66,11 +55,7 @@ replaced:
- name: eth2
enable: false
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: 0000000911
- name: eth1
enable: false
location:
@@ -83,16 +68,10 @@ populate_intf:
- name: eth2
enable: false
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: "0000000911"
overridden:
commands:
- - delete service lldp interface eth2 location
- delete service lldp interface eth2 'disable'
- - set service lldp interface eth2 location elin '0000000911'
after:
- name: eth2
location:
@@ -101,11 +80,7 @@ parsed:
after:
- name: eth1
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: 0000000911
- name: eth2
location:
coordinate_based:
@@ -122,11 +97,7 @@ round_trip:
after:
- name: eth1
location:
- civic_based:
- country_code: US
- ca_info:
- - ca_type: 0
- ca_value: ENGLISH
+ elin: 0000000911
- name: eth2
location:
coordinate_based:
diff --git a/tests/unit/modules/network/vyos/fixtures/vyos_lldp_global_config.cfg b/tests/unit/modules/network/vyos/fixtures/vyos_lldp_global_config.cfg
new file mode 100644
index 0000000..05b8fa7
--- /dev/null
+++ b/tests/unit/modules/network/vyos/fixtures/vyos_lldp_global_config.cfg
@@ -0,0 +1,4 @@
+set service lldp management-address '192.0.2.14'
+set service lldp management-address 'ff00::1'
+set service lldp legacy-protocols 'cdp'
+set service lldp legacy-protocols 'fdp'
diff --git a/tests/unit/modules/network/vyos/test_vyos_lldp_global.py b/tests/unit/modules/network/vyos/test_vyos_lldp_global.py
new file mode 100644
index 0000000..0dc1a8d
--- /dev/null
+++ b/tests/unit/modules/network/vyos/test_vyos_lldp_global.py
@@ -0,0 +1,139 @@
+# (c) 2021 Red Hat Inc.
+#
+# This file is part of Ansible
+#
+# Ansible is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# Ansible is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
+
+# Make coding more python3-ish
+from __future__ import absolute_import, division, print_function
+
+
+__metaclass__ = type
+
+from unittest.mock import patch
+
+from ansible_collections.vyos.vyos.plugins.modules import vyos_lldp_global
+from ansible_collections.vyos.vyos.tests.unit.modules.utils import set_module_args
+
+from .vyos_module import TestVyosModule, load_fixture
+
+
+class TestVyosLLDPModule(TestVyosModule):
+ module = vyos_lldp_global
+
+ def setUp(self):
+ super(TestVyosLLDPModule, self).setUp()
+
+ self.mock_get_resource_connection_config = patch(
+ "ansible_collections.ansible.netcommon.plugins.module_utils.network.common.cfg.base.get_resource_connection",
+ )
+ self.get_resource_connection_config = self.mock_get_resource_connection_config.start()
+
+ self.mock_get_resource_connection_facts = patch(
+ "ansible_collections.ansible.netcommon.plugins.module_utils.network.common.facts.facts.get_resource_connection",
+ )
+ self.get_resource_connection_facts = self.mock_get_resource_connection_facts.start()
+
+ self.mock_get_config = patch(
+ "ansible_collections.vyos.vyos.plugins.module_utils.network.vyos.facts.lldp_global.lldp_global.Lldp_globalFacts.get_config",
+ )
+ self.get_config = self.mock_get_config.start()
+
+ def tearDown(self):
+ super(TestVyosLLDPModule, self).tearDown()
+
+ self.mock_get_resource_connection_config.stop()
+ self.mock_get_resource_connection_facts.stop()
+ self.mock_get_config.stop()
+
+ def load_fixtures(self, commands=None, filename=None):
+ self.get_config.return_value = load_fixture("vyos_lldp_global_config.cfg")
+
+ def test_vyos_lldp_global_merge_enabled(self):
+ set_module_args(dict(config=dict(enable=True)))
+ self.execute_module(changed=False)
+
+ def test_vyos_lldp_global_merge_disabled(self):
+ set_module_args(dict(config=dict(enable=False)))
+ self.execute_module(changed=True, commands=["delete service lldp"])
+
+ def test_vyos_lldp_global_merge_addresses(self):
+ set_module_args(
+ dict(
+ config=dict(
+ enable=True,
+ addresses=["192.0.0.1"],
+ ),
+ ),
+ )
+ self.execute_module(
+ changed=True,
+ commands=["set service lldp management-address '192.0.0.1'"],
+ )
+
+ def test_vyos_lldp_global_replace_addresses(self):
+ set_module_args(
+ dict(
+ config=dict(
+ enable=True,
+ addresses=["192.0.0.1"],
+ legacy_protocols=["cdp", "fdp"],
+ ),
+ state="replaced",
+ ),
+ )
+ commands = [
+ "set service lldp management-address '192.0.0.1'",
+ "delete service lldp management-address '192.0.2.14'",
+ "delete service lldp management-address 'ff00::1'",
+ ]
+ self.execute_module(changed=True, commands=commands)
+
+ def test_vyos_lldp_global_replace_protocols(self):
+ set_module_args(
+ dict(
+ config=dict(
+ enable=True,
+ addresses=["192.0.2.14", "ff00::1"],
+ legacy_protocols=["cdp"],
+ ),
+ state="replaced",
+ ),
+ )
+ commands = [
+ "delete service lldp legacy-protocols 'fdp'",
+ ]
+ self.execute_module(changed=True, commands=commands)
+
+ def test_vyos_lldp_global_replace_address(self):
+ set_module_args(
+ dict(
+ config=dict(
+ enable=True,
+ address="192.0.0.1",
+ legacy_protocols=["cdp", "fdp"],
+ ),
+ state="replaced",
+ ),
+ )
+ commands = [
+ "set service lldp management-address '192.0.0.1'",
+ "delete service lldp management-address '192.0.2.14'",
+ "delete service lldp management-address 'ff00::1'",
+ ]
+ self.execute_module(changed=True, commands=commands)
+
+ def test_vyos_lldp_global_delete_all(self):
+ set_module_args(dict(config=dict(), state="deleted"))
+ self.execute_module(changed=True, commands=["delete service lldp"])