summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli/test_service_dhcp-relay.py
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2023-02-04 16:11:14 +0100
committerGitHub <noreply@github.com>2023-02-04 16:11:14 +0100
commit9ee41e63880ea52d058c90d15837d6ebd48f0a80 (patch)
treef5df010f70d8216d497b5f562e197c9a2e6cacbd /smoketest/scripts/cli/test_service_dhcp-relay.py
parentd56956df82c036d9ca0cb11626265951b970545d (diff)
parentca70102fcf782e7a61d3d1b7672d74eb8db32129 (diff)
downloadvyos-1x-9ee41e63880ea52d058c90d15837d6ebd48f0a80.tar.gz
vyos-1x-9ee41e63880ea52d058c90d15837d6ebd48f0a80.zip
Merge pull request #1603 from nicolas-fort/T2408
T2408: dhcp-relay: Add listen-interface and upstream-interface feature
Diffstat (limited to 'smoketest/scripts/cli/test_service_dhcp-relay.py')
-rwxr-xr-xsmoketest/scripts/cli/test_service_dhcp-relay.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_service_dhcp-relay.py b/smoketest/scripts/cli/test_service_dhcp-relay.py
index bbfd9e032..92f87c06c 100755
--- a/smoketest/scripts/cli/test_service_dhcp-relay.py
+++ b/smoketest/scripts/cli/test_service_dhcp-relay.py
@@ -82,6 +82,43 @@ class TestServiceDHCPRelay(VyOSUnitTestSHIM.TestCase):
# Check for running process
self.assertTrue(process_named_running(PROCESS_NAME))
+ def test_relay_interfaces(self):
+ max_size = '800'
+ hop_count = '20'
+ agents_packets = 'append'
+ servers = ['192.0.2.1', '192.0.2.2']
+ listen_iface = 'eth0'
+ up_iface = 'eth1'
+
+ self.cli_set(base_path + ['interface', up_iface])
+ self.cli_set(base_path + ['listen-interface', listen_iface])
+ # check validate() - backward interface plus listen_interface
+ with self.assertRaises(ConfigSessionError):
+ self.cli_commit()
+ self.cli_delete(base_path + ['interface'])
+
+ self.cli_set(base_path + ['upstream-interface', up_iface])
+
+ for server in servers:
+ self.cli_set(base_path + ['server', server])
+
+ # commit changes
+ self.cli_commit()
+
+ # Check configured port
+ config = read_file(RELAY_CONF)
+
+ # Test configured relay interfaces
+ self.assertIn(f'-id {listen_iface}', config)
+ self.assertIn(f'-iu {up_iface}', config)
+
+ # Test relay servers
+ for server in servers:
+ self.assertIn(f' {server}', config)
+
+ # Check for running process
+ self.assertTrue(process_named_running(PROCESS_NAME))
+
if __name__ == '__main__':
unittest.main(verbosity=2)