65 lines
2.4 KiB
Python
65 lines
2.4 KiB
Python
|
|
from commands.sniff import is_mac_address
|
|
|
|
import unittest
|
|
|
|
class TestIsMacAddress(unittest.TestCase):
|
|
|
|
|
|
def test_valid_mac_address_lowercase(self):
|
|
self.assertTrue(is_mac_address("aa:bb:cc:dd:ee:ff"))
|
|
self.assertFalse(is_mac_address("192.168.1.1"))
|
|
self.assertFalse(is_mac_address("aa:bb:cc:dd:ee:ff:gg"))
|
|
|
|
|
|
def test_valid_mac_address_uppercase(self):
|
|
self.assertTrue(is_mac_address("AA:BB:CC:DD:EE:FF"))
|
|
self.assertFalse(is_mac_address("10.0.0.1"))
|
|
self.assertFalse(is_mac_address("AA:BB:CC:DD:EE"))
|
|
|
|
|
|
def test_valid_mac_address_mixed_case(self):
|
|
self.assertTrue(is_mac_address("Aa:Bb:Cc:Dd:Ee:Ff"))
|
|
self.assertFalse(is_mac_address("172.16.0.1"))
|
|
self.assertFalse(is_mac_address("Aa:Bb:Cc:Dd:Ee:Ff:Gg"))
|
|
|
|
|
|
def test_valid_mac_address_digits(self):
|
|
self.assertTrue(is_mac_address("00:11:22:33:44:55"))
|
|
self.assertFalse(is_mac_address("8.8.8.8"))
|
|
self.assertFalse(is_mac_address("00:11:22:33:44"))
|
|
|
|
# returns False for an empty string
|
|
def test_empty_string(self):
|
|
self.assertFalse(is_mac_address(""))
|
|
self.assertFalse(is_mac_address(":"))
|
|
|
|
def test_invalid_characters(self):
|
|
self.assertFalse(is_mac_address("gh:ij:kl:mn:op:qr"))
|
|
self.assertFalse(is_mac_address("192.168.0.256"))
|
|
self.assertFalse(is_mac_address("ghij::klmn::opqr"))
|
|
|
|
# returns False for a MAC address with incorrect length
|
|
def test_incorrect_length(self):
|
|
self.assertFalse(is_mac_address("aa:bb:cc"))
|
|
self.assertFalse(is_mac_address("10.0.0.256"))
|
|
self.assertFalse(is_mac_address("aa::bb::cc::dd::ee::ff::gg"))
|
|
|
|
# returns False for a MAC address with missing colons
|
|
def test_missing_colons(self):
|
|
self.assertFalse(is_mac_address("aabbccddeeff"))
|
|
self.assertFalse(is_mac_address("127.0.0.1"))
|
|
self.assertFalse(is_mac_address("aabbccddeeffgg"))
|
|
|
|
# returns False for a MAC address with extra colons
|
|
def test_extra_colons(self):
|
|
self.assertFalse(is_mac_address("aa::bb::cc::dd::ee::ff"))
|
|
self.assertFalse(is_mac_address("192.168.1.256"))
|
|
self.assertFalse(is_mac_address("aa::bb::cc::dd::ee::ff::gg"))
|
|
|
|
# returns False for a MAC address with spaces
|
|
def test_spaces_in_mac(self):
|
|
self.assertFalse(is_mac_address("aa bb cc dd ee ff"))
|
|
self.assertFalse(is_mac_address("8.8.4.4"))
|
|
self.assertFalse(is_mac_address("aa bb cc dd ee ff gg"))
|