Beispiel #1
0
 def clean_mac(self):
     """Clean the mac field"""
     try:
         mac = MacPrefix(self.cleaned_data['mac'])
     except ValueError as error:
         raise forms.ValidationError(error)
     return mac
Beispiel #2
0
    def get_mac_prefix(self):
        """Returns the watched MAC address as a MacPrefix object

        :rtype: nav.macaddress.MacPrefix
        """
        filtered_mac = self._filtered_mac_addr()
        prefix_mac = filtered_mac[0:self.prefix_length]
        return MacPrefix(prefix_mac)
Beispiel #3
0
    def _parse_mac_to_queryset(mac, queryset):
        if not mac:
            return queryset

        try:
            mac = MacPrefix(mac, min_prefix_len=2)
        except ValueError as e:
            raise exceptions.ParseError("mac: %s" % e)

        low, high = mac[0], mac[-1]
        return queryset.extra(where=["mac BETWEEN %s AND %s"],
                              params=[str(low), str(high)])
Beispiel #4
0
def test_macprefix_should_return_zero_padded_when_address_start_with_zero():
    param = u'01:01:01'
    mac_addr = MacPrefix(param)
    assert str(mac_addr) == u'01:01:01'
Beispiel #5
0
def test_macprefix_should_return_correct_value_with_last_key():
    param = 'e4-2f-45'
    mac_addr = MacPrefix(param)
    assert six.text_type(mac_addr[-1]) == u'e4:2f:45:ff:ff:ff'
Beispiel #6
0
def test_macprefix_should_return_correct_value_with_zero_key():
    param = 'e42f.45'
    mac_addr = MacPrefix(param)
    assert six.text_type(mac_addr[0]) == u'e4:2f:45:00:00:00'
Beispiel #7
0
def test_macprefix_has_correct_length_with_prefix_length_eigth():
    param = u'e42f.453d'
    mac_addr = MacPrefix(param)
    assert len(mac_addr) == 65536
Beispiel #8
0
def test_macprefix_has_correct_length_with_prefix_length_six():
    param = 'e4:2f:45'
    mac_addr = MacPrefix(param)
    assert len(mac_addr) == 16777216
 def test_macprefix_has_correct_length_with_prefix_length_six(self):
     param = 'e4:2f:45'
     mac_addr = MacPrefix(param)
     self.assertEqual(len(mac_addr), 16777216)
Beispiel #10
0
 def test_macprefix_should_return_zero_padded_when_address_start_with_5_zeros(
         self):
     param = u'00:00:01'
     mac_addr = MacPrefix(param)
     self.assertEqual(six.text_type(mac_addr), u'00:00:01')
Beispiel #11
0
 def test_macprefix_with_dot_prefix_should_return_same_prefix(self):
     param = 'e42f.45f'
     mac_addr = MacPrefix(param)
     self.assertEqual(six.text_type(mac_addr), u'e4:2f:45:f')
Beispiel #12
0
 def test_macprefix_should_return_correct_value_with_key_equal_256(self):
     param = u'e4:2f:45:3d'
     mac_addr = MacPrefix(param)
     self.assertEqual(unicode(mac_addr[157]), u'e4:2f:45:3d:00:9d')
Beispiel #13
0
 def test_macprefix_should_return_zero_padded_when_address_start_with_zero(
         self):
     param = u'01:01:01'
     mac_addr = MacPrefix(param)
     self.assertEqual(unicode(mac_addr), u'01:01:01')
Beispiel #14
0
 def test_macprefix_with_dash_prefix_should_return_same_prefix(self):
     param = 'e4-2f-45-f'
     mac_addr = MacPrefix(param)
     self.assertEqual(unicode(mac_addr), u'e4:2f:45:f')
Beispiel #15
0
def test_macprefix_with_dot_prefix_should_return_same_prefix():
    param = 'e42f.45f'
    mac_addr = MacPrefix(param)
    assert six.text_type(mac_addr) == u'e4:2f:45:f'
Beispiel #16
0
def test_macprefix_should_return_zero_padded_when_address_start_with_5_zeros():
    param = u'00:00:01'
    mac_addr = MacPrefix(param)
    assert six.text_type(mac_addr) == u'00:00:01'
Beispiel #17
0
 def test_macprefix_has_correct_length_with_prefix_length_seven(self):
     param = u'e4-2f-45-3'
     mac_addr = MacPrefix(param)
     self.assertEqual(len(mac_addr), 1048576)
Beispiel #18
0
def test_macprefix_has_correct_length_with_prefix_length_seven():
    param = u'e4-2f-45-3'
    mac_addr = MacPrefix(param)
    assert len(mac_addr) == 1048576
Beispiel #19
0
 def test_macprefix_has_correct_length_with_prefix_length_eigth(self):
     param = u'e42f.453d'
     mac_addr = MacPrefix(param)
     self.assertEqual(len(mac_addr), 65536)
Beispiel #20
0
def test_macprefix_has_correct_length_with_full_length_address():
    param = 'e4:2f:45:72:6e:76'
    mac_addr = MacPrefix(param)
    assert len(mac_addr) == 1
Beispiel #21
0
 def test_macprefix_has_correct_length_with_full_length_address(self):
     param = 'e4:2f:45:72:6e:76'
     mac_addr = MacPrefix(param)
     self.assertEqual(len(mac_addr), 1)
Beispiel #22
0
def test_macprefix_should_return_correct_value_with_key_equal_256():
    param = u'e4:2f:45:3d'
    mac_addr = MacPrefix(param)
    assert six.text_type(mac_addr[157]) == u'e4:2f:45:3d:00:9d'
Beispiel #23
0
 def test_macprefix_should_return_correct_value_with_zero_key(self):
     param = 'e42f.45'
     mac_addr = MacPrefix(param)
     self.assertEqual(six.text_type(mac_addr[0]), u'e4:2f:45:00:00:00')
Beispiel #24
0
 def test_macprefix_should_return_correct_value_with_last_key(self):
     param = 'e4-2f-45'
     mac_addr = MacPrefix(param)
     self.assertEqual(six.text_type(mac_addr[-1]), u'e4:2f:45:ff:ff:ff')
Beispiel #25
0
def test_macprefix_with_dash_prefix_should_return_same_prefix():
    param = 'e4-2f-45-f'
    mac_addr = MacPrefix(param)
    assert str(mac_addr) == u'e4:2f:45:f'