1
1
from pathlib import Path
2
2
from test .support .import_helper import unload , CleanImport
3
- from test .support .warnings_helper import check_warnings
3
+ from test .support .warnings_helper import check_warnings , ignore_warnings
4
4
import unittest
5
5
import sys
6
6
import importlib
@@ -535,25 +535,18 @@ class ImportlibMigrationTests(unittest.TestCase):
535
535
# PEP 302 emulation in this module is in the process of being
536
536
# deprecated in favour of importlib proper
537
537
538
- def test_get_loader_avoids_emulation (self ):
539
- with check_warnings () as w :
540
- self .assertIsNotNone (pkgutil .get_loader ("sys" ))
541
- self .assertIsNotNone (pkgutil .get_loader ("os" ))
542
- self .assertIsNotNone (pkgutil .get_loader ("test.support" ))
543
- self .assertEqual (len (w .warnings ), 0 )
544
-
545
538
@unittest .skipIf (__name__ == '__main__' , 'not compatible with __main__' )
539
+ @ignore_warnings (category = DeprecationWarning )
546
540
def test_get_loader_handles_missing_loader_attribute (self ):
547
541
global __loader__
548
542
this_loader = __loader__
549
543
del __loader__
550
544
try :
551
- with check_warnings () as w :
552
- self .assertIsNotNone (pkgutil .get_loader (__name__ ))
553
- self .assertEqual (len (w .warnings ), 0 )
545
+ self .assertIsNotNone (pkgutil .get_loader (__name__ ))
554
546
finally :
555
547
__loader__ = this_loader
556
548
549
+ @ignore_warnings (category = DeprecationWarning )
557
550
def test_get_loader_handles_missing_spec_attribute (self ):
558
551
name = 'spam'
559
552
mod = type (sys )(name )
@@ -563,6 +556,7 @@ def test_get_loader_handles_missing_spec_attribute(self):
563
556
loader = pkgutil .get_loader (name )
564
557
self .assertIsNone (loader )
565
558
559
+ @ignore_warnings (category = DeprecationWarning )
566
560
def test_get_loader_handles_spec_attribute_none (self ):
567
561
name = 'spam'
568
562
mod = type (sys )(name )
@@ -572,6 +566,7 @@ def test_get_loader_handles_spec_attribute_none(self):
572
566
loader = pkgutil .get_loader (name )
573
567
self .assertIsNone (loader )
574
568
569
+ @ignore_warnings (category = DeprecationWarning )
575
570
def test_get_loader_None_in_sys_modules (self ):
576
571
name = 'totally bogus'
577
572
sys .modules [name ] = None
@@ -581,18 +576,26 @@ def test_get_loader_None_in_sys_modules(self):
581
576
del sys .modules [name ]
582
577
self .assertIsNone (loader )
583
578
579
+ def test_get_loader_is_deprecated (self ):
580
+ with check_warnings (
581
+ (r".*\bpkgutil.get_loader\b.*" , DeprecationWarning ),
582
+ ):
583
+ res = pkgutil .get_loader ("sys" )
584
+ self .assertIsNotNone (res )
585
+
586
+ def test_find_loader_is_deprecated (self ):
587
+ with check_warnings (
588
+ (r".*\bpkgutil.find_loader\b.*" , DeprecationWarning ),
589
+ ):
590
+ res = pkgutil .find_loader ("sys" )
591
+ self .assertIsNotNone (res )
592
+
593
+ @ignore_warnings (category = DeprecationWarning )
584
594
def test_find_loader_missing_module (self ):
585
595
name = 'totally bogus'
586
596
loader = pkgutil .find_loader (name )
587
597
self .assertIsNone (loader )
588
598
589
- def test_find_loader_avoids_emulation (self ):
590
- with check_warnings () as w :
591
- self .assertIsNotNone (pkgutil .find_loader ("sys" ))
592
- self .assertIsNotNone (pkgutil .find_loader ("os" ))
593
- self .assertIsNotNone (pkgutil .find_loader ("test.support" ))
594
- self .assertEqual (len (w .warnings ), 0 )
595
-
596
599
def test_get_importer_avoids_emulation (self ):
597
600
# We use an illegal path so *none* of the path hooks should fire
598
601
with check_warnings () as w :
0 commit comments