ghtest.scanner module

class ghtest.scanner.FunctionInfo(module: str, qualname: str, filepath: str, lineno: int, parameters: List[ghtest.scanner.ParameterInfo], returns: Optional[str], docstring: Optional[str], module_globals: Dict[str, Any] = <factory>, sample_calls: List[Dict[str, Any]] = <factory>, module_call_values: List[Dict[str, Any]] = <factory>, module_param_values: Dict[str, List[Any]] = <factory>, crud_role: Optional[str] = None, crud_resource: Optional[str] = None, parameter_usage_values: Dict[str, List[Any]] = <factory>, unused_parameters: Set[str] = <factory>, module_functions: List[ForwardRef('FunctionInfo')] = <factory>)[source]

Bases: object

crud_resource: str | None = None
crud_role: str | None = None
docstring: str | None
filepath: str
import_object() Callable[[...], Any][source]

Import and return the actual function object using module + qualname.

lineno: int
module: str
module_call_values: List[Dict[str, Any]]
module_functions: List[FunctionInfo]
module_globals: Dict[str, Any]
module_param_values: Dict[str, List[Any]]
parameter_usage_values: Dict[str, List[Any]]
parameters: List[ParameterInfo]
qualname: str
returns: str | None
sample_calls: List[Dict[str, Any]]
unused_parameters: Set[str]
class ghtest.scanner.ParameterInfo(name: str, kind: str, annotation: str | None, default: str | None, default_value: Any | None = None)[source]

Bases: object

annotation: str | None
default: str | None
default_value: Any | None = None
kind: str
name: str
ghtest.scanner.scan_python_functions(root: str) List[FunctionInfo][source]

Recursively scan a folder for Python functions (including methods in classes).

Returns a list of FunctionInfo objects with module name, qualified name, source file path, parameters, return annotation, and docstring.