Skip to content

Commit b782a5a

Browse files
committed
Refactor collect_requirements function signature to take general return values
1 parent 8b7a54d commit b782a5a

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

tests/helpers.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import sys
44
from functools import wraps
55
from pathlib import Path
6-
from typing import Callable, Optional
6+
from typing import Callable, Optional, TypeVar
77

88
from tests.types import P, RawFilesDict, RequirementsDict, RequirementsStem
99

@@ -53,14 +53,15 @@ def run_command(
5353
result.check_returncode()
5454

5555

56-
def collect_requirements(
57-
func: Callable[P, tuple[RawFilesDict, RequirementsStem]]
58-
) -> Callable[P, tuple[RequirementsDict, RequirementsStem]]:
56+
R = TypeVar("R")
57+
58+
59+
def collect_requirements(func: Callable[P, tuple[RawFilesDict, R]]) -> Callable[P, tuple[RequirementsDict, R]]:
5960
@wraps(func)
60-
def wrapper(*args: P.args, **kwargs: P.kwargs) -> tuple[RequirementsDict, RequirementsStem]:
61-
files_dict, requirements_stem = func(*args, **kwargs)
61+
def wrapper(*args: P.args, **kwargs: P.kwargs) -> tuple[RequirementsDict, R]:
62+
files_dict, other = func(*args, **kwargs)
6263
requirements_dict = {filename: "\n".join(requirements) for filename, requirements in files_dict.items()}
63-
return requirements_dict, requirements_stem
64+
return requirements_dict, other
6465

6566
return wrapper
6667

0 commit comments

Comments
 (0)