Staging
v0.8.1
https://github.com/python/cpython
Raw File
Tip revision: 69dec9c8d23606180e660b30d327000e9463b82d authored by Ɓukasz Langa on 02 July 2020, 17:57:45 UTC
Python 3.9.0b4
Tip revision: 69dec9c
test_files.py
import typing
import unittest

from importlib import resources
from importlib.abc import Traversable
from . import data01
from . import util


class FilesTests:
    def test_read_bytes(self):
        files = resources.files(self.data)
        actual = files.joinpath('utf-8.file').read_bytes()
        assert actual == b'Hello, UTF-8 world!\n'

    def test_read_text(self):
        files = resources.files(self.data)
        actual = files.joinpath('utf-8.file').read_text()
        assert actual == 'Hello, UTF-8 world!\n'

    @unittest.skipUnless(
        hasattr(typing, 'runtime_checkable'),
        "Only suitable when typing supports runtime_checkable",
        )
    def test_traversable(self):
        assert isinstance(resources.files(self.data), Traversable)


class OpenDiskTests(FilesTests, unittest.TestCase):
    def setUp(self):
        self.data = data01


class OpenZipTests(FilesTests, util.ZipSetup, unittest.TestCase):
    pass


if __name__ == '__main__':
    unittest.main()
back to top