aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Lib/test/test_importlib/test_resource.py
diff options
context:
space:
mode:
authorBarry Warsaw <barry@python.org>2018-03-27 09:59:38 -0700
committerGitHub <noreply@github.com>2018-03-27 09:59:38 -0700
commit30e507dff465a31901d87df791a2bac40dc88530 (patch)
treeae5ed579a2bcc2cd83ace768d78636221f0d0b8e /Lib/test/test_importlib/test_resource.py
parentda1734c58d2f97387ccc9676074717d38b044128 (diff)
downloadcpython-30e507dff465a31901d87df791a2bac40dc88530.tar.gz
cpython-30e507dff465a31901d87df791a2bac40dc88530.zip
bpo-33151: Handle submodule resources (GH-6268)
Diffstat (limited to 'Lib/test/test_importlib/test_resource.py')
-rw-r--r--Lib/test/test_importlib/test_resource.py22
1 files changed, 21 insertions, 1 deletions
diff --git a/Lib/test/test_importlib/test_resource.py b/Lib/test/test_importlib/test_resource.py
index c38ad0358a0..d717e1dd04d 100644
--- a/Lib/test/test_importlib/test_resource.py
+++ b/Lib/test/test_importlib/test_resource.py
@@ -4,7 +4,7 @@ import unittest
from . import data01
from . import zipdata02
from . import util
-from importlib import resources
+from importlib import resources, import_module
class ResourceTests:
@@ -109,6 +109,26 @@ class ResourceFromZipsTest(util.ZipSetupBase, unittest.TestCase):
set(resources.contents('ziptestdata.two')),
{'__init__.py', 'resource2.txt'})
+ def test_is_submodule_resource(self):
+ submodule = import_module('ziptestdata.subdirectory')
+ self.assertTrue(
+ resources.is_resource(submodule, 'binary.file'))
+
+ def test_read_submodule_resource_by_name(self):
+ self.assertTrue(
+ resources.is_resource('ziptestdata.subdirectory', 'binary.file'))
+
+ def test_submodule_contents(self):
+ submodule = import_module('ziptestdata.subdirectory')
+ self.assertEqual(
+ set(resources.contents(submodule)),
+ {'__init__.py', 'binary.file'})
+
+ def test_submodule_contents_by_name(self):
+ self.assertEqual(
+ set(resources.contents('ziptestdata.subdirectory')),
+ {'__init__.py', 'binary.file'})
+
class NamespaceTest(unittest.TestCase):
def test_namespaces_cant_have_resources(self):