Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/faker/utils/decorators.py: 71%

24 statements  

« prev     ^ index     » next       coverage.py v6.4.4, created at 2023-07-17 14:22 -0600

1from functools import wraps 

2from typing import Callable, Dict, Tuple, TypeVar 

3 

4from ..utils import text 

5 

6T = TypeVar("T") 

7 

8 

9def slugify(fn: Callable) -> Callable: 

10 @wraps(fn) 

11 def wrapper(*args: Tuple[T, ...], **kwargs: Dict[str, T]) -> str: 

12 return text.slugify(fn(*args, **kwargs)) 

13 

14 return wrapper 

15 

16 

17def slugify_domain(fn: Callable) -> Callable: 

18 @wraps(fn) 

19 def wrapper(*args: Tuple[T, ...], **kwargs: Dict[str, T]) -> str: 

20 return text.slugify(fn(*args, **kwargs), allow_dots=True) 

21 

22 return wrapper 

23 

24 

25def slugify_unicode(fn: Callable) -> Callable: 

26 @wraps(fn) 

27 def wrapper(*args: Tuple[T, ...], **kwargs: Dict[str, T]) -> str: 

28 return text.slugify(fn(*args, **kwargs), allow_unicode=True) 

29 

30 return wrapper 

31 

32 

33def lowercase(fn: Callable) -> Callable: 

34 @wraps(fn) 

35 def wrapper(*args: Tuple[T, ...], **kwargs: Dict[str, T]) -> str: 

36 return fn(*args, **kwargs).lower() 

37 

38 return wrapper