Issue #20097: Fix bad use of "self" in importlib's WindowsRegistryFinder.

This commit is contained in:
Eric Snow 2014-01-02 22:25:00 -07:00
parent 9dee304205
commit fbc785188d
4 changed files with 1893 additions and 1862 deletions

View File

@ -1406,7 +1406,7 @@ class WindowsRegistryFinder:
@classmethod @classmethod
def find_module(cls, fullname, path=None): def find_module(cls, fullname, path=None):
"""Find module named in the registry.""" """Find module named in the registry."""
spec = self.find_spec(fullname, path) spec = cls.find_spec(fullname, path)
if spec is not None: if spec is not None:
return spec.loader return spec.loader
else: else:

View File

@ -0,0 +1,29 @@
from . import util
frozen_machinery, source_machinery = util.import_importlib('importlib.machinery')
import sys
import unittest
@unittest.skipUnless(sys.platform.startswith('win'), 'requires Windows')
class WindowsRegistryFinderTests:
# XXX Need a test that finds the spec via the registry.
def test_find_spec_missing(self):
spec = self.machinery.WindowsRegistryFinder.find_spec('spam')
self.assertIs(spec, None)
def test_find_module_missing(self):
loader = self.machinery.WindowsRegistryFinder.find_module('spam')
self.assertIs(loader, None)
class Frozen_WindowsRegistryFinderTests(WindowsRegistryFinderTests,
unittest.TestCase):
machinery = frozen_machinery
class Source_WindowsRegistryFinderTests(WindowsRegistryFinderTests,
unittest.TestCase):
machinery = source_machinery

View File

@ -36,6 +36,8 @@ Core and Builtins
- Issue #19736: Add module-level statvfs constants defined for GNU/glibc - Issue #19736: Add module-level statvfs constants defined for GNU/glibc
based systems. based systems.
- Issue #20097: Fix bad use of "self" in importlib's WindowsRegistryFinder.
- Issue #19729: In str.format(), fix recursive expansion in format spec. - Issue #19729: In str.format(), fix recursive expansion in format spec.
- Issue #19638: Fix possible crash / undefined behaviour from huge (more than 2 - Issue #19638: Fix possible crash / undefined behaviour from huge (more than 2

File diff suppressed because it is too large Load Diff