Source code for dhcpkit.tests.ipv6.extensions.test_pd_exclude

"""
Test the PDExcludeOption implementation
"""
import unittest

from dhcpkit.ipv6.extensions.pd_exclude import PDExcludeOption
from dhcpkit.tests.ipv6.options import test_option


[docs]class PDExcludeOptionTestCase(test_option.OptionTestCase):
[docs] def setUp(self): self.option_bytes = bytes.fromhex('004300024078') self.option_object = PDExcludeOption(64, bytes.fromhex('78')) self.parse_option()
[docs] def test_prefix_length(self): self.check_integer_property_range('prefix_length', 1, 128)
[docs] def test_subnet_id(self): self.option.subnet_id = 'Not bytes' with self.assertRaisesRegex(ValueError, 'sequence of .* bytes'): self.option.validate()
[docs] def test_bad_option_length(self): with self.assertRaisesRegex(ValueError, 'longer than the available buffer'): PDExcludeOption.parse(bytes.fromhex('004300034078'))
if __name__ == '__main__': # pragma: no cover unittest.main()