Skip to content

Commit

Permalink
ddclient: T5791: Add smoketest for dynamic interface
Browse files Browse the repository at this point in the history
  • Loading branch information
indrajitr committed Dec 11, 2023
1 parent 120a641 commit 3b3749e
Showing 1 changed file with 27 additions and 1 deletion.
28 changes: 27 additions & 1 deletion smoketest/scripts/cli/test_service_dns_dynamic.py
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,33 @@ def test_06_dyndns_web_options(self):
self.assertIn(f'password=\'{password}\'', ddclient_conf)
self.assertIn(f'{hostname}', ddclient_conf)

def test_07_dyndns_vrf(self):
def test_07_dyndns_dynamic_interface(self):
# Check if DDNS service can be configured and runs
svc_path = name_path + ['namecheap']
proto = 'namecheap'
dyn_interface = 'pppoe587'

self.cli_set(svc_path + ['address', dyn_interface])
self.cli_set(svc_path + ['protocol', proto])
self.cli_set(svc_path + ['server', server])
self.cli_set(svc_path + ['username', username])
self.cli_set(svc_path + ['password', password])
self.cli_set(svc_path + ['host-name', hostname])

# Dynamic interface will raise a warning but still go through
with self.assertRaises(Warning):
self.cli_commit()

# Check the generating config parameters
ddclient_conf = cmd(f'sudo cat {DDCLIENT_CONF}')
self.assertIn(f'ifv4={dyn_interface}', ddclient_conf)
self.assertIn(f'protocol={proto}', ddclient_conf)
self.assertIn(f'server={server}', ddclient_conf)
self.assertIn(f'login={username}', ddclient_conf)
self.assertIn(f'password=\'{password}\'', ddclient_conf)
self.assertIn(f'{hostname}', ddclient_conf)

def test_08_dyndns_vrf(self):
# Table number randomized, but should be within range 100-65535
vrf_table = '58710'
vrf_name = f'vyos-test-{vrf_table}'
Expand Down

0 comments on commit 3b3749e

Please sign in to comment.