Example #1
0
    def test_validate_port_extra_dhcp_opts_invalid(self):
        # Two value options and two invalid, assert the validation
        # will fail and only the invalid options will be returned as
        # not supported
        opt0 = {
            'opt_name': 'bootfile-name',
            'opt_value': 'homer_simpson.bin',
            'ip_version': 4
        }
        opt1 = {
            'opt_name': 'dns-server',
            'opt_value': '2001:4860:4860::8888',
            'ip_version': 6
        }
        opt2 = {
            'opt_name': 'not-valid-ipv4',
            'opt_value': 'joe rogan',
            'ip_version': 4
        }
        opt3 = {
            'opt_name': 'not-valid-ipv6',
            'opt_value': 'young jamie',
            'ip_version': 6
        }
        port = {edo_ext.EXTRADHCPOPTS: [opt0, opt1, opt2, opt3]}

        result = utils.validate_port_extra_dhcp_opts(port)
        self.assertTrue(result.failed)
        self.assertEqual(['not-valid-ipv4'], result.invalid_ipv4)
        self.assertEqual(['not-valid-ipv6'], result.invalid_ipv6)
Example #2
0
    def test_validate_port_extra_dhcp_opts(self):
        opt0 = {'opt_name': 'bootfile-name',
                'opt_value': 'homer_simpson.bin',
                'ip_version': 4}
        opt1 = {'opt_name': 'dns-server',
                'opt_value': '2001:4860:4860::8888',
                'ip_version': 6}
        port = {edo_ext.EXTRADHCPOPTS: [opt0, opt1]}

        result = utils.validate_port_extra_dhcp_opts(port)
        self.assertFalse(result.failed)
        self.assertEqual([], result.invalid_ipv4)
        self.assertEqual([], result.invalid_ipv6)
Example #3
0
    def test_validate_port_extra_dhcp_opts_dhcp_disabled(self):
        opt0 = {'opt_name': 'not-valid-ipv4',
                'opt_value': 'joe rogan',
                'ip_version': 4}
        opt1 = {'opt_name': 'dhcp_disabled',
                'opt_value': 'True',
                'ip_version': 4}
        port = {edo_ext.EXTRADHCPOPTS: [opt0, opt1]}

        # Validation always succeeds if the "dhcp_disabled" option is enabled
        result = utils.validate_port_extra_dhcp_opts(port)
        self.assertFalse(result.failed)
        self.assertEqual([], result.invalid_ipv4)
        self.assertEqual([], result.invalid_ipv6)
Example #4
0
 def test_validate_port_extra_dhcp_opts_empty(self):
     port = {edo_ext.EXTRADHCPOPTS: []}
     result = utils.validate_port_extra_dhcp_opts(port)
     self.assertFalse(result.failed)
     self.assertEqual([], result.invalid_ipv4)
     self.assertEqual([], result.invalid_ipv6)