summaryrefslogtreecommitdiff
path: root/tests/unit
diff options
context:
space:
mode:
authorGomathiselviS <gomathiselvi@gmail.com>2020-11-23 10:17:52 -0500
committerGitHub <noreply@github.com>2020-11-23 15:17:52 +0000
commit6c51003d205242acd18bdfb6bd3400c5cfdba419 (patch)
treea8485e201f85ad05392009bcb4b5a340ad814f3e /tests/unit
parent869415457a84114c3efdee4bc381ed77e93ee569 (diff)
downloadvyos.vyos-6c51003d205242acd18bdfb6bd3400c5cfdba419.tar.gz
vyos.vyos-6c51003d205242acd18bdfb6bd3400c5cfdba419.zip
Enable configuring new interface which is not present in the config (#102)
Enable configuring new interface which is not present in the config Reviewed-by: https://github.com/apps/ansible-zuul
Diffstat (limited to 'tests/unit')
-rw-r--r--tests/unit/modules/network/vyos/fixtures/vyos_interfaces_config.cfg1
-rw-r--r--tests/unit/modules/network/vyos/test_vyos_interfaces.py78
2 files changed, 77 insertions, 2 deletions
diff --git a/tests/unit/modules/network/vyos/fixtures/vyos_interfaces_config.cfg b/tests/unit/modules/network/vyos/fixtures/vyos_interfaces_config.cfg
index 0876916..90f120c 100644
--- a/tests/unit/modules/network/vyos/fixtures/vyos_interfaces_config.cfg
+++ b/tests/unit/modules/network/vyos/fixtures/vyos_interfaces_config.cfg
@@ -3,4 +3,5 @@ set interfaces ethernet eth0 hw-id '08:00:27:7c:85:05'
set interfaces ethernet eth1 description 'test-interface'
set interfaces ethernet eth2 hw-id '08:00:27:04:85:99'
set interfaces ethernet eth3 hw-id '08:00:27:1c:82:d1'
+set interfaces ethernet eth3 description 'Ethernet 3'
set interfaces loopback 'lo'
diff --git a/tests/unit/modules/network/vyos/test_vyos_interfaces.py b/tests/unit/modules/network/vyos/test_vyos_interfaces.py
index 9b832a0..40770df 100644
--- a/tests/unit/modules/network/vyos/test_vyos_interfaces.py
+++ b/tests/unit/modules/network/vyos/test_vyos_interfaces.py
@@ -93,8 +93,82 @@ class TestVyosFirewallInterfacesModule(TestVyosModule):
commands = [
"set interfaces bonding bond1 description 'Bond - 1'",
- "delete interfaces bonding bond1 disable",
"set interfaces openvpn vtun1 description 'vtun - 1'",
- "delete interfaces openvpn vtun1 disable",
+ ]
+ self.execute_module(changed=True, commands=commands)
+
+ def test_vyos_interfaces_merged_newinterface(self):
+ set_module_args(
+ dict(
+ config=[
+ dict(
+ name="eth4",
+ description="Ethernet 4",
+ enabled=True,
+ speed="auto",
+ duplex="auto",
+ ),
+ dict(name="eth1", description="Configured by Ansible"),
+ ],
+ state="merged",
+ )
+ )
+
+ commands = [
+ "set interfaces ethernet eth1 description 'Configured by Ansible'",
+ "set interfaces ethernet eth4 description 'Ethernet 4'",
+ "set interfaces ethernet eth4 duplex 'auto'",
+ "set interfaces ethernet eth4 speed 'auto'",
+ ]
+ self.execute_module(changed=True, commands=commands)
+
+ def test_vyos_interfaces_replaced_newinterface(self):
+ set_module_args(
+ dict(
+ config=[
+ dict(
+ name="eth4",
+ description="Ethernet 4",
+ enabled=True,
+ speed="auto",
+ duplex="auto",
+ ),
+ dict(name="eth1", description="Configured by Ansible"),
+ ],
+ state="replaced",
+ )
+ )
+
+ commands = [
+ "set interfaces ethernet eth1 description 'Configured by Ansible'",
+ "set interfaces ethernet eth4 description 'Ethernet 4'",
+ "set interfaces ethernet eth4 duplex 'auto'",
+ "set interfaces ethernet eth4 speed 'auto'",
+ ]
+ self.execute_module(changed=True, commands=commands)
+
+ def test_vyos_interfaces_overridden_newinterface(self):
+ set_module_args(
+ dict(
+ config=[
+ dict(
+ name="eth4",
+ description="Ethernet 4",
+ enabled=True,
+ speed="auto",
+ duplex="auto",
+ ),
+ dict(name="eth1", description="Configured by Ansible"),
+ ],
+ state="overridden",
+ )
+ )
+
+ commands = [
+ "set interfaces ethernet eth1 description 'Configured by Ansible'",
+ "set interfaces ethernet eth4 description 'Ethernet 4'",
+ "set interfaces ethernet eth4 duplex 'auto'",
+ "set interfaces ethernet eth4 speed 'auto'",
+ "delete interfaces ethernet eth3 description",
]
self.execute_module(changed=True, commands=commands)