summaryrefslogtreecommitdiff
path: root/smoketest/scripts/cli/test_interfaces_erspan.py
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2021-03-17 19:12:04 +0100
committerChristian Poessinger <christian@poessinger.com>2021-03-17 19:18:17 +0100
commit0f3def974fbaa4a26e6ad590ee37dd965bc2358f (patch)
tree36cc09af1fefbc3f6a4f6ad7b946d00baaecb703 /smoketest/scripts/cli/test_interfaces_erspan.py
parent42d3cfbd3ee893ec567582a04467a899191f44fd (diff)
downloadvyos-1x-0f3def974fbaa4a26e6ad590ee37dd965bc2358f.tar.gz
vyos-1x-0f3def974fbaa4a26e6ad590ee37dd965bc2358f.zip
smoketest: add shim for every test to re-use common tasts
Currently every smoketest does the setup and destruction of the configsession on its own durin setUp(). This creates a lot of overhead and one configsession should be re-used during execution of every smoketest script. In addiion a test that failed will leaf the system in an unconsistent state. For this reason before the test is executed we will save the running config to /tmp and the will re-load the config after the test has passed, always ensuring a clean environment for the next test.
Diffstat (limited to 'smoketest/scripts/cli/test_interfaces_erspan.py')
-rwxr-xr-xsmoketest/scripts/cli/test_interfaces_erspan.py85
1 files changed, 0 insertions, 85 deletions
diff --git a/smoketest/scripts/cli/test_interfaces_erspan.py b/smoketest/scripts/cli/test_interfaces_erspan.py
deleted file mode 100755
index 4575c61ce..000000000
--- a/smoketest/scripts/cli/test_interfaces_erspan.py
+++ /dev/null
@@ -1,85 +0,0 @@
-#!/usr/bin/env python3
-#
-# Copyright (C) 2020-2021 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
-# published by the Free Software Foundation.
-#
-# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
-
-import unittest
-
-from vyos.configsession import ConfigSession
-from vyos.configsession import ConfigSessionError
-from vyos.util import get_interface_config
-
-from base_interfaces_test import BasicInterfaceTest
-
-mtu = 1500
-
-class ERSPanTunnelInterfaceTest(BasicInterfaceTest.BaseTest):
- def setUp(self):
- super().setUp()
-
- self._base_path = ['interfaces', 'erspan']
- self._test_mtu = True
-
- self.local_v4 = '10.1.1.1'
- self.local_v6 = '2001:db8::1'
- self.remote_v4 = '10.2.2.2'
- self.remote_v6 = '2001:db9::1'
-
- def tearDown(self):
- self.session.delete(['interfaces', 'erspan'])
- super().tearDown()
-
- def test_erspan_ipv4(self):
- interface = 'ersp100'
- encapsulation = 'erspan'
- key = 123
-
- self.session.set(self._base_path + [interface, 'encapsulation', encapsulation])
- self.session.set(self._base_path + [interface, 'source-address', self.local_v4])
- self.session.set(self._base_path + [interface, 'remote', self.remote_v4])
- self.session.set(self._base_path + [interface, 'parameters', 'ip' , 'key', str(key)])
-
- self.session.commit()
-
- conf = get_interface_config(interface)
- self.assertEqual(interface, conf['ifname'])
- self.assertEqual(encapsulation, conf['linkinfo']['info_kind'])
- self.assertEqual(mtu, conf['mtu'])
-
- self.assertEqual(self.local_v4, conf['linkinfo']['info_data']['local'])
- self.assertEqual(self.remote_v4, conf['linkinfo']['info_data']['remote'])
-
-
- def test_erspan_ipv6(self):
- interface = 'ersp1000'
- encapsulation = 'ip6erspan'
- key = 123
-
- self.session.set(self._base_path + [interface, 'encapsulation', encapsulation])
- self.session.set(self._base_path + [interface, 'source-address', self.local_v6])
- self.session.set(self._base_path + [interface, 'remote', self.remote_v6])
- self.session.set(self._base_path + [interface, 'parameters', 'ip' , 'key', str(key)])
-
- self.session.commit()
-
- conf = get_interface_config(interface)
- self.assertEqual(interface, conf['ifname'])
- self.assertEqual(encapsulation, conf['linkinfo']['info_kind'])
- self.assertEqual(mtu, conf['mtu'])
-
- self.assertEqual(self.local_v6, conf['linkinfo']['info_data']['local'])
- self.assertEqual(self.remote_v6, conf['linkinfo']['info_data']['remote'])
-
-if __name__ == '__main__':
- unittest.main(verbosity=2)