diff options
author | Daniil Baturin <daniil@vyos.io> | 2024-03-21 10:21:33 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-21 10:21:33 +0100 |
commit | 27438a498113d5a35fe83dece5e12c0c0c1b2b17 (patch) | |
tree | 441162593b60335348c84a3638558076b2eac385 /smoketest | |
parent | b09a67b4617efd8f60da0db6e56a7357254c5bd4 (diff) | |
parent | 9eb018c4935235d292d7c693ac15da5761be064a (diff) | |
download | vyos-1x-27438a498113d5a35fe83dece5e12c0c0c1b2b17.tar.gz vyos-1x-27438a498113d5a35fe83dece5e12c0c0c1b2b17.zip |
Merge pull request #3157 from c-po/vti-T6085
vti: T6085: interface is always down and only enabled by IPSec daemon
Diffstat (limited to 'smoketest')
-rwxr-xr-x | smoketest/scripts/cli/test_interfaces_vti.py | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/smoketest/scripts/cli/test_interfaces_vti.py b/smoketest/scripts/cli/test_interfaces_vti.py index 7f13575a3..871ac650b 100755 --- a/smoketest/scripts/cli/test_interfaces_vti.py +++ b/smoketest/scripts/cli/test_interfaces_vti.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 # -# Copyright (C) 2023 VyOS maintainers and contributors +# Copyright (C) 2023-2024 VyOS maintainers and contributors # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License version 2 or later as @@ -18,6 +18,9 @@ import unittest from base_interfaces_test import BasicInterfaceTest +from vyos.ifconfig import Interface +from vyos.utils.network import is_intf_addr_assigned + class VTIInterfaceTest(BasicInterfaceTest.TestCase): @classmethod def setUpClass(cls): @@ -27,5 +30,19 @@ class VTIInterfaceTest(BasicInterfaceTest.TestCase): # call base-classes classmethod super(VTIInterfaceTest, cls).setUpClass() + def test_add_single_ip_address(self): + addr = '192.0.2.0/31' + for intf in self._interfaces: + self.cli_set(self._base_path + [intf, 'address', addr]) + for option in self._options.get(intf, []): + self.cli_set(self._base_path + [intf] + option.split()) + + self.cli_commit() + + # VTI interface are always down and only brought up by IPSec + for intf in self._interfaces: + self.assertTrue(is_intf_addr_assigned(intf, addr)) + self.assertEqual(Interface(intf).get_admin_state(), 'down') + if __name__ == '__main__': unittest.main(verbosity=2) |