REDROOM
PHP 8.2.30
Path:
Logout
Edit File
Size: 2.20 KB
Close
/opt/hc_python/lib64/python3.12/site-packages/importlib_resources/tests/_path.py
Text
Base64
import functools import pathlib from typing import Dict, Protocol, Union, runtime_checkable #### # from jaraco.path 3.7.1 class Symlink(str): """ A string indicating the target of a symlink. """ FilesSpec = Dict[str, Union[str, bytes, Symlink, 'FilesSpec']] @runtime_checkable class TreeMaker(Protocol): def __truediv__(self, *args, **kwargs): ... # pragma: no cover def mkdir(self, **kwargs): ... # pragma: no cover def write_text(self, content, **kwargs): ... # pragma: no cover def write_bytes(self, content): ... # pragma: no cover def symlink_to(self, target): ... # pragma: no cover def _ensure_tree_maker(obj: Union[str, TreeMaker]) -> TreeMaker: return obj if isinstance(obj, TreeMaker) else pathlib.Path(obj) # type: ignore[return-value] def build( spec: FilesSpec, prefix: Union[str, TreeMaker] = pathlib.Path(), # type: ignore[assignment] ): """ Build a set of files/directories, as described by the spec. Each key represents a pathname, and the value represents the content. Content may be a nested directory. >>> spec = { ... 'README.txt': "A README file", ... "foo": { ... "__init__.py": "", ... "bar": { ... "__init__.py": "", ... }, ... "baz.py": "# Some code", ... "bar.py": Symlink("baz.py"), ... }, ... "bing": Symlink("foo"), ... } >>> target = getfixture('tmp_path') >>> build(spec, target) >>> target.joinpath('foo/baz.py').read_text(encoding='utf-8') '# Some code' >>> target.joinpath('bing/bar.py').read_text(encoding='utf-8') '# Some code' """ for name, contents in spec.items(): create(contents, _ensure_tree_maker(prefix) / name) @functools.singledispatch def create(content: Union[str, bytes, FilesSpec], path): path.mkdir(exist_ok=True) build(content, prefix=path) # type: ignore[arg-type] @create.register def _(content: bytes, path): path.write_bytes(content) @create.register def _(content: str, path): path.write_text(content, encoding='utf-8') @create.register def _(content: Symlink, path): path.symlink_to(content) # end from jaraco.path ####
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 2 × Files: 15
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
compat
DIR
-
drwxr-xr-x
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__pycache__
DIR
-
drwxr-xr-x
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_compatibilty_files.py
3.24 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_contents.py
838 B
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_custom.py
1.19 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_files.py
5.61 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_functional.py
8.86 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_open.py
2.62 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_path.py
1.94 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_read.py
2.97 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_reader.py
4.55 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_resource.py
7.51 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
test_util.py
1.08 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
util.py
9.57 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
zip.py
577 B
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
_path.py
2.20 KB
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
__init__.py
0 B
lrw-r--r--
2025-04-04 08:01:59
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).