Page MenuHomeVyOS Platform

test_jinja_filters.py
No OneTemporary

Size
3 KB
Referenced Files
None
Subscribers
None

test_jinja_filters.py

#!/usr/bin/env python3
#
# Copyright (C) 2020 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/>.
from unittest import TestCase
from ipaddress import ip_network
from vyos.template import vyos_address_from_cidr
from vyos.template import vyos_netmask_from_cidr
from vyos.template import vyos_ipv4
from vyos.template import vyos_ipv6
from vyos.template import vyos_first_host_address
from vyos.template import vyos_last_host_address
from vyos.template import vyos_inc_ip
class TestTeamplteHelpers(TestCase):
def setUp(self):
pass
def test_helpers_from_cidr(self):
network_v4 = '192.0.2.0/26'
self.assertEqual(vyos_address_from_cidr(network_v4), str(ip_network(network_v4).network_address))
self.assertEqual(vyos_netmask_from_cidr(network_v4), str(ip_network(network_v4).netmask))
def test_helpers_ipv4(self):
self.assertTrue(vyos_ipv4('192.0.2.1'))
self.assertTrue(vyos_ipv4('192.0.2.0/24'))
self.assertTrue(vyos_ipv4('192.0.2.1/32'))
self.assertTrue(vyos_ipv4('10.255.1.2'))
self.assertTrue(vyos_ipv4('10.255.1.0/24'))
self.assertTrue(vyos_ipv4('10.255.1.2/32'))
self.assertFalse(vyos_ipv4('2001:db8::'))
self.assertFalse(vyos_ipv4('2001:db8::1'))
self.assertFalse(vyos_ipv4('2001:db8::/64'))
def test_helpers_ipv6(self):
self.assertFalse(vyos_ipv6('192.0.2.1'))
self.assertFalse(vyos_ipv6('192.0.2.0/24'))
self.assertFalse(vyos_ipv6('192.0.2.1/32'))
self.assertFalse(vyos_ipv6('10.255.1.2'))
self.assertFalse(vyos_ipv6('10.255.1.0/24'))
self.assertFalse(vyos_ipv6('10.255.1.2/32'))
self.assertTrue(vyos_ipv6('2001:db8::'))
self.assertTrue(vyos_ipv6('2001:db8::1'))
self.assertTrue(vyos_ipv6('2001:db8::1/64'))
self.assertTrue(vyos_ipv6('2001:db8::/32'))
self.assertTrue(vyos_ipv6('2001:db8::/64'))
def test_helpers_first_host_address(self):
self.assertEqual(vyos_first_host_address('10.0.0.0/24'), '10.0.0.1')
self.assertEqual(vyos_first_host_address('10.0.0.128/25'), '10.0.0.129')
self.assertEqual(vyos_first_host_address('10.0.0.200/29'), '10.0.0.201')
self.assertEqual(vyos_first_host_address('2001:db8::/64'), '2001:db8::')
self.assertEqual(vyos_first_host_address('2001:db8::/112'), '2001:db8::')
self.assertEqual(vyos_first_host_address('2001:db8::10/112'), '2001:db8::10')
self.assertEqual(vyos_first_host_address('2001:db8::100/112'), '2001:db8::100')

File Metadata

Mime Type
text/x-script.python
Expires
Sat, Oct 17, 12:53 AM (1 d, 18 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
4377226
Default Alt Text
test_jinja_filters.py (3 KB)

Event Timeline