diff options
author | Barry Warsaw <barry@python.org> | 2017-11-29 15:35:02 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-29 15:35:02 (GMT) |
commit | 23cc8c0f9ece32f1f96133b9db2cb30c64f23a0e (patch) | |
tree | 5314d8eeb59cd7377222532a2e0067e4ad9a2ba1 | |
parent | b0df786258c99f98295b82ec62daea1f49912c33 (diff) | |
download | cpython-23cc8c0f9ece32f1f96133b9db2cb30c64f23a0e.zip cpython-23cc8c0f9ece32f1f96133b9db2cb30c64f23a0e.tar.gz cpython-23cc8c0f9ece32f1f96133b9db2cb30c64f23a0e.tar.bz2 |
[3.6] bpo-32107 - Backport bitmask check fix (GH-4576) (#4591)
Remove a flakey test and rewrite another one for readability.
-rw-r--r-- | Lib/test/test_uuid.py | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/Lib/test/test_uuid.py b/Lib/test/test_uuid.py index 47248f9..4373fba 100644 --- a/Lib/test/test_uuid.py +++ b/Lib/test/test_uuid.py @@ -438,59 +438,57 @@ eth0 Link encap:Ethernet HWaddr 12:34:56:78:90:ab self.assertEqual(mac, 0x1234567890ab) - def check_node(self, node, requires=None, network=False): + def check_node(self, node, requires=None): if requires and node is None: self.skipTest('requires ' + requires) hex = '%012x' % node if support.verbose >= 2: print(hex, end=' ') - if network: - # 47 bit will never be set in IEEE 802 addresses obtained - # from network cards. - self.assertFalse(node & 0x010000000000, hex) self.assertTrue(0 < node < (1 << 48), "%s is not an RFC 4122 node ID" % hex) @unittest.skipUnless(os.name == 'posix', 'requires Posix') def test_ifconfig_getnode(self): node = uuid._ifconfig_getnode() - self.check_node(node, 'ifconfig', True) + self.check_node(node, 'ifconfig') @unittest.skipUnless(os.name == 'posix', 'requires Posix') def test_ip_getnode(self): node = uuid._ip_getnode() - self.check_node(node, 'ip', True) + self.check_node(node, 'ip') @unittest.skipUnless(os.name == 'posix', 'requires Posix') def test_arp_getnode(self): node = uuid._arp_getnode() - self.check_node(node, 'arp', True) + self.check_node(node, 'arp') @unittest.skipUnless(os.name == 'posix', 'requires Posix') def test_lanscan_getnode(self): node = uuid._lanscan_getnode() - self.check_node(node, 'lanscan', True) + self.check_node(node, 'lanscan') @unittest.skipUnless(os.name == 'posix', 'requires Posix') def test_netstat_getnode(self): node = uuid._netstat_getnode() - self.check_node(node, 'netstat', True) + self.check_node(node, 'netstat') @unittest.skipUnless(os.name == 'nt', 'requires Windows') def test_ipconfig_getnode(self): node = uuid._ipconfig_getnode() - self.check_node(node, 'ipconfig', True) + self.check_node(node, 'ipconfig') @unittest.skipUnless(importable('win32wnet'), 'requires win32wnet') @unittest.skipUnless(importable('netbios'), 'requires netbios') def test_netbios_getnode(self): node = uuid._netbios_getnode() - self.check_node(node, network=True) + self.check_node(node) def test_random_getnode(self): node = uuid._random_getnode() - # Least significant bit of first octet must be set. - self.assertTrue(node & 0x010000000000, '%012x' % node) + # The multicast bit, i.e. the least significant bit of first octet, + # must be set for randomly generated MAC addresses. See RFC 4122, + # $4.1.6. + self.assertTrue(node & (1 << 40), '%012x' % node) self.check_node(node) @unittest.skipUnless(os.name == 'posix', 'requires Posix') |