1  from test.test_importlib import util
       2  
       3  machinery = util.import_importlib('importlib.machinery')
       4  
       5  import unittest
       6  
       7  
       8  class ESC[4;38;5;81mPathHookTest:
       9  
      10      """Test the path hook for source."""
      11  
      12      def path_hook(self):
      13          return self.machinery.FileFinder.path_hook((self.machinery.SourceFileLoader,
      14              self.machinery.SOURCE_SUFFIXES))
      15  
      16      def test_success(self):
      17          with util.create_modules('dummy') as mapping:
      18              self.assertTrue(hasattr(self.path_hook()(mapping['.root']),
      19                                      'find_spec'))
      20  
      21      def test_success_legacy(self):
      22          with util.create_modules('dummy') as mapping:
      23              self.assertTrue(hasattr(self.path_hook()(mapping['.root']),
      24                                      'find_module'))
      25  
      26      def test_empty_string(self):
      27          # The empty string represents the cwd.
      28          self.assertTrue(hasattr(self.path_hook()(''), 'find_spec'))
      29  
      30      def test_empty_string_legacy(self):
      31          # The empty string represents the cwd.
      32          self.assertTrue(hasattr(self.path_hook()(''), 'find_module'))
      33  
      34  
      35  (Frozen_PathHookTest,
      36   Source_PathHooktest
      37   ) = util.test_both(PathHookTest, machinery=machinery)
      38  
      39  
      40  if __name__ == '__main__':
      41      unittest.main()