Coverage for src / remedapy / random_string.py: 100%
9 statements
« prev ^ index » next coverage.py v7.13.2, created at 2026-02-02 10:52 +0100
« prev ^ index » next coverage.py v7.13.2, created at 2026-02-02 10:52 +0100
1import random
2import string
3from collections.abc import Callable
4from typing import overload
6from remedapy.decorator import make_data_last
9@overload
10def random_string(length: int, /) -> str: ...
13@overload
14def random_string() -> Callable[[int], str]: ...
17@make_data_last
18def random_string(length: int, /) -> str:
19 characters = string.ascii_letters + string.digits
20 return ''.join(random.choices(characters, k=length))