diff --git a/src/safeds_stubgen/api_analyzer/_api.py b/src/safeds_stubgen/api_analyzer/_api.py index 7971e426..de9f22ed 100644 --- a/src/safeds_stubgen/api_analyzer/_api.py +++ b/src/safeds_stubgen/api_analyzer/_api.py @@ -1,6 +1,7 @@ from __future__ import annotations import json +from collections import defaultdict from dataclasses import dataclass, field from enum import Enum as PythonEnum from typing import TYPE_CHECKING, Any @@ -48,6 +49,8 @@ def __init__(self, distribution: str, package: str, version: str) -> None: self.attributes_: dict[str, Attribute] = {} self.parameters_: dict[str, Parameter] = {} + self.reexport_map: dict[str, set[Module]] = defaultdict(set) + def add_module(self, module: Module) -> None: self.modules[module.id] = module @@ -170,6 +173,7 @@ class Class: docstring: ClassDocstring constructor: Function | None = None constructor_fulldocstring: str = "" + inherits_from_exception: bool = False reexported_by: list[Module] = field(default_factory=list) attributes: list[Attribute] = field(default_factory=list) methods: list[Function] = field(default_factory=list) @@ -184,6 +188,7 @@ def to_dict(self) -> dict[str, Any]: "is_public": self.is_public, "superclasses": self.superclasses, "constructor": self.constructor.to_dict() if self.constructor is not None else None, + "inherits_from_exception": self.inherits_from_exception, "reexported_by": [module.id for module in self.reexported_by], "attributes": [attribute.id for attribute in self.attributes], "methods": [method.id for method in self.methods], diff --git a/src/safeds_stubgen/api_analyzer/_ast_visitor.py b/src/safeds_stubgen/api_analyzer/_ast_visitor.py index da156e82..3125efd9 100644 --- a/src/safeds_stubgen/api_analyzer/_ast_visitor.py +++ b/src/safeds_stubgen/api_analyzer/_ast_visitor.py @@ -1,6 +1,5 @@ from __future__ import annotations -from collections import defaultdict from copy import deepcopy from types import NoneType from typing import TYPE_CHECKING @@ -45,7 +44,6 @@ class MyPyAstVisitor: def __init__(self, docstring_parser: AbstractDocstringParser, api: API, aliases: dict[str, set[str]]) -> None: self.docstring_parser: AbstractDocstringParser = docstring_parser - self.reexported: dict[str, set[Module]] = defaultdict(set) self.api: API = api self.__declaration_stack: list[Module | Class | Function | Enum | list[Attribute | EnumInstance]] = [] self.aliases = aliases @@ -68,41 +66,41 @@ def enter_moduledef(self, node: mp_nodes.MypyFile) -> None: if _definition.__class__.__name__ not in ["FuncDef", "Decorator", "ClassDef", "AssignmentStmt"] ] - for definition in child_definitions: - # Imports - if isinstance(definition, mp_nodes.Import): - for import_name, import_alias in definition.ids: + # Imports + for import_ in node.imports: + if isinstance(import_, mp_nodes.Import): + for import_name, import_alias in import_.ids: qualified_imports.append( QualifiedImport(import_name, import_alias), ) - elif isinstance(definition, mp_nodes.ImportFrom): - for import_name, import_alias in definition.names: + elif isinstance(import_, mp_nodes.ImportFrom): + import_id = f"{import_.id}." if import_.id else "" + for import_name, import_alias in import_.names: qualified_imports.append( QualifiedImport( - f"{definition.id}.{import_name}", + f"{import_id}{import_name}", import_alias, ), ) - elif isinstance(definition, mp_nodes.ImportAll): + elif isinstance(import_, mp_nodes.ImportAll): wildcard_imports.append( - WildcardImport(definition.id), + WildcardImport(import_.id), ) - # Docstring - elif isinstance(definition, mp_nodes.ExpressionStmt) and isinstance(definition.expr, mp_nodes.StrExpr): + # Search for a Docstring + for definition in child_definitions: + if isinstance(definition, mp_nodes.ExpressionStmt) and isinstance(definition.expr, mp_nodes.StrExpr): docstring = definition.expr.value + break # Create module id to get the full path - id_ = self._create_module_id(node.path) + id_ = node.fullname.replace(".", "/") # If we are checking a package node.name will be the package name, but since we get import information from # the __init__.py file we set the name to __init__ - if is_package: - name = "__init__" - else: - name = node.name + name = "__init__" if is_package else node.name # Remember module, so we can later add classes and global functions module = Module( @@ -135,11 +133,11 @@ def enter_classdef(self, node: mp_nodes.ClassDef) -> None: # Variance # Special base classes like Generic[...] get moved to "removed_base_type_expr" during semantic analysis of mypy generic_exprs = [] - for removed_base_type_expr in node.removed_base_type_exprs: - base = getattr(removed_base_type_expr, "base", None) + for base_type_expr in node.removed_base_type_exprs + node.base_type_exprs: + base = getattr(base_type_expr, "base", None) base_name = getattr(base, "name", None) - if base_name == "Generic": - generic_exprs.append(removed_base_type_expr) + if base_name in {"Collection", "Generic", "Sequence"}: + generic_exprs.append(base_type_expr) type_parameters = [] if generic_exprs: @@ -177,7 +175,16 @@ def enter_classdef(self, node: mp_nodes.ClassDef) -> None: # superclasses superclasses = [] + inherits_from_exception = False for superclass in node.base_type_exprs: + # Check for superclasses that inherit directly or transitively from Exception and remove them + if ( + hasattr(superclass, "node") + and isinstance(superclass.node, mp_nodes.TypeInfo) + and self._inherits_from_exception(superclass.node) + ): + inherits_from_exception = True + if hasattr(superclass, "fullname"): superclass_qname = superclass.fullname superclass_name = superclass_qname.split(".")[-1] @@ -209,6 +216,7 @@ def enter_classdef(self, node: mp_nodes.ClassDef) -> None: docstring=docstring, reexported_by=reexported_by, constructor_fulldocstring=constructor_fulldocstring, + inherits_from_exception=inherits_from_exception, type_parameters=type_parameters, ) self.__declaration_stack.append(class_) @@ -454,7 +462,6 @@ def _infer_type_from_return_stmts(func_node: mp_nodes.FuncDef) -> sds_types.Name continue if not isinstance(return_stmt.expr, mp_nodes.CallExpr | mp_nodes.MemberExpr): - # Todo Frage: Parse conditional branches recursively? # If the return statement is a conditional expression we parse the "if" and "else" branches if isinstance(return_stmt.expr, mp_nodes.ConditionalExpr): for conditional_branch in [return_stmt.expr.if_expr, return_stmt.expr.else_expr]: @@ -648,8 +655,12 @@ def _create_attribute( raise AttributeError("Could not get argument information for attribute.") # Ignore types that are special mypy any types. The Any type "from_unimported_type" could appear for aliase - if attribute_type is not None and not ( - isinstance(attribute_type, mp_types.AnyType) and not has_correct_type_of_any(attribute_type.type_of_any) + if ( + attribute_type is not None + and not ( + isinstance(attribute_type, mp_types.AnyType) and not has_correct_type_of_any(attribute_type.type_of_any) + ) + and not isinstance(attribute_type, mp_types.CallableType) ): # noinspection PyTypeChecker type_ = self.mypy_type_to_abstract_type(attribute_type, unanalyzed_type) @@ -789,8 +800,8 @@ def _get_reexported_by(self, name: str) -> list[Module]: reexported_by = set() for i in range(len(path)): reexport_name = ".".join(path[: i + 1]) - if reexport_name in self.reexported: - for mod in self.reexported[reexport_name]: + if reexport_name in self.api.reexport_map: + for mod in self.api.reexport_map[reexport_name]: reexported_by.add(mod) return list(reexported_by) @@ -798,11 +809,11 @@ def _get_reexported_by(self, name: str) -> list[Module]: def _add_reexports(self, module: Module) -> None: for qualified_import in module.qualified_imports: name = qualified_import.qualified_name - self.reexported[name].add(module) + self.api.reexport_map[name].add(module) for wildcard_import in module.wildcard_imports: name = wildcard_import.module_name - self.reexported[name].add(module) + self.api.reexport_map[name].add(module) # #### Misc. utilities def mypy_type_to_abstract_type( @@ -903,7 +914,7 @@ def mypy_type_to_abstract_type( return sds_types.NamedType(name=type_name, qname=mypy_type.type.fullname) # Iterable builtins - elif type_name in {"tuple", "list", "set"}: + elif type_name in {"tuple", "list", "set", "Sequence", "Collection"}: types = [self.mypy_type_to_abstract_type(arg) for arg in mypy_type.args] match type_name: case "tuple": @@ -912,8 +923,12 @@ def mypy_type_to_abstract_type( return sds_types.ListType(types=types) case "set": return sds_types.SetType(types=types) + case "Sequence": + return sds_types.ListType(types=types) + case "Collection": + return sds_types.ListType(types=types) - elif type_name == "dict": + elif type_name in {"dict", "Mapping"}: return sds_types.DictType( key_type=self.mypy_type_to_abstract_type(mypy_type.args[0]), value_type=self.mypy_type_to_abstract_type(mypy_type.args[1]), @@ -983,55 +998,31 @@ def _search_alias_in_qualified_imports( return name, qname return "", "" - def _create_module_id(self, module_path: str) -> str: - """Create an ID for the module object. - - Creates the module ID while discarding possible unnecessary information from the module qname. - - Paramters - --------- - qname : str - The qualified name of the module + def _is_public(self, name: str, qname: str) -> bool: + if self.mypy_file is None: # pragma: no cover + raise ValueError("A Mypy file (module) should be defined.") - Returns - ------- - str - ID of the module - """ - package_name = self.api.package - - if package_name not in module_path: - raise ValueError("Package name could not be found in the module path.") - - # We have to split the qname of the module at the first occurence of the package name and reconnect it while - # discarding everything in front of it. This is necessary since the qname could contain unwanted information. - module_id = module_path.split(package_name, 1)[-1] - module_id = module_id.replace("\\", "/") + parent = self.__declaration_stack[-1] - if module_id.startswith("/"): - module_id = module_id[1:] + if not isinstance(parent, Module | Class) and not (isinstance(parent, Function) and parent.name == "__init__"): + raise TypeError( + f"Expected parent for {name} in module {self.mypy_file.fullname} to be a class or a module.", + ) # pragma: no cover - if module_id.endswith(".py"): - module_id = module_id[:-3] + if not isinstance(parent, Function): + _check_publicity_with_reexports: bool | None = self._check_publicity_in_reexports(name, qname, parent) - if module_id: - return f"{package_name}/{module_id}" - return package_name + if _check_publicity_with_reexports is not None: + return _check_publicity_with_reexports - def _is_public(self, name: str, qualified_name: str) -> bool: - if name.startswith("_") and not name.endswith("__"): + if is_internal(name) and not name.endswith("__"): return False - for reexported_item in self.reexported: - if reexported_item.endswith(f".{name}"): - return True - - parent = self.__declaration_stack[-1] - if isinstance(parent, Class) and name == "__init__": + if isinstance(parent, Class) and (name == "__init__" or not is_internal(name)): return parent.is_public # The slicing is necessary so __init__ functions are not excluded (already handled in the first condition). - return all(not it.startswith("_") for it in qualified_name.split(".")[:-1]) + return all(not is_internal(it) for it in qname.split(".")[:-1]) def _create_id_from_stack(self, name: str) -> str: """Create an ID for a new object using previous objects of the stack. @@ -1057,3 +1048,84 @@ def _create_id_from_stack(self, name: str) -> str: segments += [name] return "/".join(segments) + + def _inherits_from_exception(self, node: mp_nodes.TypeInfo) -> bool: + if node.fullname == "builtins.Exception": + return True + + return any(self._inherits_from_exception(base.type) for base in node.bases) + + def _check_publicity_in_reexports(self, name: str, qname: str, parent: Module | Class) -> bool | None: + not_internal = not is_internal(name) + module_qname = getattr(self.mypy_file, "fullname", "") + module_name = getattr(self.mypy_file, "name", "") + package_id = "/".join(module_qname.split(".")[:-1]) + + for reexported_key in self.api.reexport_map: + module_is_reexported = reexported_key in {module_name, module_qname} + + # Check if the function/class/module is reexported + if reexported_key.endswith(name) or module_is_reexported: + + # Iterate through all sources (__init__.py files) where it was reexported + for reexport_source in self.api.reexport_map[reexported_key]: + + # We have to check if it's the correct reexport with the ID + is_from_same_package = reexport_source.id == package_id + is_from_another_package = reexported_key in {qname, module_qname} + if not is_from_same_package and not is_from_another_package: + continue + + # If the whole module was reexported we have to check if the name or alias is intern + if module_is_reexported: + + # Check the wildcard imports of the source + for wildcard_import in reexport_source.wildcard_imports: + if ( + ( + (is_from_same_package and wildcard_import.module_name == module_name) + or (is_from_another_package and wildcard_import.module_name == module_qname) + ) + and not_internal + and (isinstance(parent, Module) or parent.is_public) + ): + return True + + # Check the qualified imports of the source + for qualified_import in reexport_source.qualified_imports: + + # If the whole module was exported, we have to check if the func / class / attr we are + # checking here is internal, and if not, if any parents are internal. + if ( + qualified_import.qualified_name in {module_name, module_qname} + and ( + (qualified_import.alias is None and not_internal) + or (qualified_import.alias is not None and not is_internal(qualified_import.alias)) + ) + and not_internal + and (isinstance(parent, Module) or parent.is_public) + ): + # If the module name or alias is not internal, check if the parent is public + return True + + # A specific function or class was reexported. + if reexported_key.endswith(name): + + # For wildcard imports we check in the _is_public method if the func / class is internal + for qualified_import in reexport_source.qualified_imports: + + if qname.endswith(qualified_import.qualified_name) and ( + qualified_import.alias is not None + and not is_internal(qualified_import.alias) + or (qualified_import.alias is None and not_internal) + ): + # First we check if we've found the right import then do the following: + # If a specific func / class was reexported check + # 1. If it has an alias and if it's alias is internal + # 2. Else if it has no alias and is not internal + return True + return None + + +def is_internal(name: str) -> bool: + return name.startswith("_") diff --git a/src/safeds_stubgen/api_analyzer/_ast_walker.py b/src/safeds_stubgen/api_analyzer/_ast_walker.py index 61caf165..9568b826 100644 --- a/src/safeds_stubgen/api_analyzer/_ast_walker.py +++ b/src/safeds_stubgen/api_analyzer/_ast_walker.py @@ -35,7 +35,7 @@ def __walk(self, node: MypyFile | ClassDef | Decorator | FuncDef | AssignmentStm if isinstance(node, Decorator): node = node.func - if node in visited_nodes: + if node in visited_nodes: # pragma: no cover raise AssertionError("Node visited twice") visited_nodes.add(node) @@ -71,6 +71,9 @@ def __walk(self, node: MypyFile | ClassDef | Decorator | FuncDef | AssignmentStm if isinstance(node, FuncDef) and node.name != "__init__": continue + if isinstance(child_node, FuncDef) and isinstance(node, FuncDef): + continue + self.__walk(child_node, visited_nodes) self.__leave(node) diff --git a/src/safeds_stubgen/api_analyzer/_get_api.py b/src/safeds_stubgen/api_analyzer/_get_api.py index e3fa0e8d..60f98391 100644 --- a/src/safeds_stubgen/api_analyzer/_get_api.py +++ b/src/safeds_stubgen/api_analyzer/_get_api.py @@ -2,7 +2,7 @@ import logging from collections import defaultdict -from pathlib import Path +from typing import TYPE_CHECKING import mypy.build as mypy_build import mypy.main as mypy_main @@ -16,6 +16,9 @@ from ._ast_walker import ASTWalker from ._package_metadata import distribution, distribution_version, package_root +if TYPE_CHECKING: + from pathlib import Path + def get_api( package_name: str, @@ -44,7 +47,7 @@ def get_api( if file_path.parts[-1] == "__init__.py": # if a directory contains an __init__.py file it's a package package_paths.append( - file_path.parent, + str(file_path.parent), ) continue @@ -59,7 +62,7 @@ def get_api( # Get mypy ast and aliases build_result = _get_mypy_build(walkable_files) - mypy_asts = _get_mypy_asts(build_result, walkable_files, package_paths, root) + mypy_asts = _get_mypy_asts(build_result, walkable_files, package_paths) aliases = _get_aliases(build_result.types, package_name) # Setup api walker @@ -91,44 +94,25 @@ def _get_mypy_build(files: list[str]) -> mypy_build.BuildResult: def _get_mypy_asts( build_result: mypy_build.BuildResult, files: list[str], - package_paths: list[Path], - root: Path, + package_paths: list[str], ) -> list[mypy_nodes.MypyFile]: - # Check mypy data key root start - parts = root.parts - graph_keys = list(build_result.graph.keys()) - root_start_after = -1 - for i in range(len(parts)): - if ".".join(parts[i:]) in graph_keys: - root_start_after = i - break - - # Create the keys for getting the corresponding data - packages = [ - ".".join( - package_path.parts[root_start_after:], - ).replace(".py", "") - for package_path in package_paths - ] - - modules = [ - ".".join( - Path(file).parts[root_start_after:], - ).replace(".py", "") - for file in files - ] - - # Get the needed data from mypy. The packages need to be checked first, since we have - # to get the reexported data first - all_paths = packages + modules - - asts = [] - for path_key in all_paths: - tree = build_result.graph[path_key].tree - if tree is not None: - asts.append(tree) - - return asts + package_ast = [] + module_ast = [] + for graph_key in build_result.graph: + ast = build_result.graph[graph_key].tree + + if ast is None: # pragma: no cover + raise ValueError + + if ast.path.endswith("__init__.py"): + ast_package_path = ast.path.split("__init__.py")[0][:-1] + if ast_package_path in package_paths: + package_ast.append(ast) + elif ast.path in files: + module_ast.append(ast) + + # The packages need to be checked first, since we have to get the reexported data first + return package_ast + module_ast def _get_aliases(result_types: dict, package_name: str) -> dict[str, set[str]]: diff --git a/src/safeds_stubgen/docstring_parsing/_abstract_docstring_parser.py b/src/safeds_stubgen/docstring_parsing/_abstract_docstring_parser.py index 7f5460fb..2e452164 100644 --- a/src/safeds_stubgen/docstring_parsing/_abstract_docstring_parser.py +++ b/src/safeds_stubgen/docstring_parsing/_abstract_docstring_parser.py @@ -20,11 +20,11 @@ class AbstractDocstringParser(ABC): @abstractmethod def get_class_documentation(self, class_node: nodes.ClassDef) -> ClassDocstring: - pass + pass # pragma: no cover @abstractmethod def get_function_documentation(self, function_node: nodes.FuncDef) -> FunctionDocstring: - pass + pass # pragma: no cover @abstractmethod def get_parameter_documentation( @@ -34,7 +34,7 @@ def get_parameter_documentation( parameter_assigned_by: ParameterAssignment, parent_class: Class | None, ) -> ParameterDocstring: - pass + pass # pragma: no cover @abstractmethod def get_attribute_documentation( @@ -42,8 +42,8 @@ def get_attribute_documentation( parent_class: Class, attribute_name: str, ) -> AttributeDocstring: - pass + pass # pragma: no cover @abstractmethod def get_result_documentation(self, function_node: nodes.FuncDef) -> ResultDocstring: - pass + pass # pragma: no cover diff --git a/src/safeds_stubgen/main.py b/src/safeds_stubgen/main.py index 57360631..da65dd05 100644 --- a/src/safeds_stubgen/main.py +++ b/src/safeds_stubgen/main.py @@ -1,4 +1,5 @@ """The entrypoint to the program.""" + from __future__ import annotations import time @@ -16,5 +17,5 @@ def main() -> None: print(f"Program ran in {time.time() - start_time}s") # noqa: T201 -if __name__ == "__main__": +if __name__ == "__main__": # pragma: no cover main() diff --git a/src/safeds_stubgen/stubs_generator/_generate_stubs.py b/src/safeds_stubgen/stubs_generator/_generate_stubs.py index 87935228..bacfae27 100644 --- a/src/safeds_stubgen/stubs_generator/_generate_stubs.py +++ b/src/safeds_stubgen/stubs_generator/_generate_stubs.py @@ -46,7 +46,7 @@ def generate_stubs(api: API, out_path: Path, convert_identifiers: bool) -> None: naming_convention = NamingConvention.SAFE_DS if convert_identifiers else NamingConvention.PYTHON stubs_generator = StubsStringGenerator(api, naming_convention) stubs_data = _generate_stubs_data(api, out_path, stubs_generator) - _generate_stubs_files(stubs_data, api, out_path, stubs_generator, naming_convention) + _generate_stubs_files(stubs_data, out_path, stubs_generator, naming_convention) def _generate_stubs_data( @@ -76,13 +76,10 @@ def _generate_stubs_data( def _generate_stubs_files( stubs_data: list[tuple[Path, str, str]], - api: API, out_path: Path, stubs_generator: StubsStringGenerator, naming_convention: NamingConvention, ) -> None: - Path(out_path / api.package).mkdir(parents=True, exist_ok=True) - for module_dir, module_name, module_text in stubs_data: # Create module dir module_dir.mkdir(parents=True, exist_ok=True) @@ -179,7 +176,7 @@ def __call__(self, module: Module) -> str: def _create_module_string(self, module: Module) -> str: # Create package info - package_info = module.id.replace("/", ".") + package_info = self._get_shortest_public_reexport() package_info_camel_case = _convert_name_to_convention(package_info, self.naming_convention) module_name_info = "" module_text = "" @@ -194,7 +191,7 @@ def _create_module_string(self, module: Module) -> str: # Create classes, class attr. & class methods for class_ in module.classes: - if class_.is_public: + if class_.is_public and not class_.inherits_from_exception: module_text += f"\n{self._create_class_string(class_)}\n" # Create enums & enum instances @@ -280,14 +277,18 @@ def _create_class_string(self, class_: Class, class_indentation: str = "") -> st # Type parameters constraints_info = "" variance_info = "" - if class_.type_parameters: + + constructor_type_vars = None + if class_.constructor: + constructor_type_vars = class_.constructor.type_var_types + + if class_.type_parameters or constructor_type_vars: # We collect the class generics for the methods later self.class_generics = [] - out = "out " for variance in class_.type_parameters: variance_direction = { VarianceKind.INVARIANT.name: "", - VarianceKind.COVARIANT.name: out, + VarianceKind.COVARIANT.name: "out ", VarianceKind.CONTRAVARIANT.name: "in ", }[variance.variance.name] @@ -300,6 +301,11 @@ def _create_class_string(self, class_: Class, class_indentation: str = "") -> st variance_item = f"{variance_item} sub {self._create_type_string(variance.type.to_dict())}" self.class_generics.append(variance_item) + if constructor_type_vars: + for constructor_type_var in constructor_type_vars: + if constructor_type_var.name not in self.class_generics: + self.class_generics.append(constructor_type_var.name) + if self.class_generics: variance_info = f"<{', '.join(self.class_generics)}>" @@ -729,6 +735,8 @@ def _create_type_string(self, type_data: dict | None) -> str: if len(types) == 2 and none_type_name in types: # if None is at least one of the two possible types, we can remove the None and just return the # other type with a question mark + if types[0] == none_type_name: + return f"{types[1]}?" return f"{types[0]}?" # If the union contains only one type, return the type instead of creating a union @@ -861,6 +869,54 @@ def _get_class_in_module(self, class_name: str) -> Class: raise LookupError(f"Expected finding class '{class_name}' in module '{self.module.id}'.") # pragma: no cover + def _get_shortest_public_reexport(self) -> str: + module_qname = self.module.id.replace("/", ".") + module_name = self.module.name + reexports = self.api.reexport_map + + def _module_name_check(name: str, string: str) -> bool: + return ( + string == name + or (f".{name}" in string and (string.endswith(f".{name}") or f"{name}." in string)) + or (f"{name}." in string and (string.startswith(f"{name}.") or f".{name}" in string)) + ) + + keys = [reexport_key for reexport_key in reexports if _module_name_check(module_name, reexport_key)] + + module_ids = set() + for key in keys: + for module in reexports[key]: + added_module_id = False + + for qualified_import in module.qualified_imports: + if _module_name_check(module_name, qualified_import.qualified_name): + module_ids.add(module.id) + added_module_id = True + break + + if added_module_id: + continue + + for wildcard_import in module.wildcard_imports: + if _module_name_check(module_name, wildcard_import.module_name): + module_ids.add(module.id) + break + + # Adjust all ids + fixed_module_ids_parts = [module_id.split("/") for module_id in module_ids] + + shortest_id = None + for fixed_module_id_parts in fixed_module_ids_parts: + if shortest_id is None or len(fixed_module_id_parts) < len(shortest_id): + shortest_id = fixed_module_id_parts + + if len(shortest_id) == 1: + break + + if shortest_id is None: + return module_qname + return ".".join(shortest_id) + def _callable_type_name_generator() -> Generator: """Generate a name for callable type parameters starting from 'a' until 'zz'.""" diff --git a/tests/data/various_modules_package/__init__.py b/tests/data/various_modules_package/__init__.py index 8c01e4eb..f97049c7 100644 --- a/tests/data/various_modules_package/__init__.py +++ b/tests/data/various_modules_package/__init__.py @@ -4,7 +4,11 @@ from ._reexport_module_3 import * from ._reexport_module_4 import FourthReexportClass from ._reexport_module_4 import _reexported_function_4 +from ._reexport_module_4 import _reexported_function_4_alias as reexported_function_4_alias +from ._reexport_module_4 import _two_times_reexported +from ._reexport_module_4 import _two_times_reexported as two_times_reexported from .enum_module import _ReexportedEmptyEnum +from file_creation._module_3 import Reexported __all__ = [ "reex_1", @@ -12,6 +16,10 @@ "reexported_function_2", "reexported_function_3", "_reexported_function_4", + "reexported_function_4_alias", + "_two_times_reexported", + "two_times_reexported", "FourthReexportClass", "_ReexportedEmptyEnum", + "Reexported", ] diff --git a/tests/data/various_modules_package/_internal_package/__init__.py b/tests/data/various_modules_package/_internal_package/__init__.py new file mode 100644 index 00000000..dd593094 --- /dev/null +++ b/tests/data/various_modules_package/_internal_package/__init__.py @@ -0,0 +1 @@ +from tests.data.various_modules_package._reexport_module_5 import reexported_in_an_internal_package diff --git a/tests/data/various_modules_package/_reexport_module_4.py b/tests/data/various_modules_package/_reexport_module_4.py index c7818391..c8a6b529 100644 --- a/tests/data/various_modules_package/_reexport_module_4.py +++ b/tests/data/various_modules_package/_reexport_module_4.py @@ -8,3 +8,11 @@ def _unreexported_function() -> None: def _reexported_function_4() -> None: pass + + +def _reexported_function_4_alias() -> None: + pass + + +def _two_times_reexported() -> None: + pass diff --git a/tests/data/various_modules_package/_reexport_module_5.py b/tests/data/various_modules_package/_reexport_module_5.py new file mode 100644 index 00000000..706a3742 --- /dev/null +++ b/tests/data/various_modules_package/_reexport_module_5.py @@ -0,0 +1 @@ +def reexported_in_an_internal_package(): ... diff --git a/tests/data/various_modules_package/aliasing/aliasing_module_1.py b/tests/data/various_modules_package/aliasing/aliasing_module_1.py index 8f752944..7e628141 100644 --- a/tests/data/various_modules_package/aliasing/aliasing_module_1.py +++ b/tests/data/various_modules_package/aliasing/aliasing_module_1.py @@ -21,4 +21,6 @@ class AliasingModuleClassC(_some_alias_a): typed_alias_attr2: AliasModule2 infer_alias_attr2 = AliasModule2 + infer_alias_attr3 = _some_alias_a + alias_list: list[_some_alias_a | some_alias_b, AliasModule2, ImportMeAlias] diff --git a/tests/data/various_modules_package/another_path/_reexported_from_another_package.py b/tests/data/various_modules_package/another_path/_reexported_from_another_package.py new file mode 100644 index 00000000..65d4c8a5 --- /dev/null +++ b/tests/data/various_modules_package/another_path/_reexported_from_another_package.py @@ -0,0 +1,8 @@ +def reexported_in_another_package_function() -> str: ... + + +class ReexportedInAnotherPackageClass: + pass + + +def _still_internal_function(): ... diff --git a/tests/data/various_modules_package/another_path/_reexported_from_another_package_2.py b/tests/data/various_modules_package/another_path/_reexported_from_another_package_2.py new file mode 100644 index 00000000..2fdb587e --- /dev/null +++ b/tests/data/various_modules_package/another_path/_reexported_from_another_package_2.py @@ -0,0 +1,8 @@ +def reexported_in_another_package_function2() -> str: ... + + +class ReexportedInAnotherPackageClass2: + pass + + +def _still_internal_function2(): ... diff --git a/tests/data/various_modules_package/another_path/_reexported_from_another_package_3.py b/tests/data/various_modules_package/another_path/_reexported_from_another_package_3.py new file mode 100644 index 00000000..8c8063c5 --- /dev/null +++ b/tests/data/various_modules_package/another_path/_reexported_from_another_package_3.py @@ -0,0 +1,8 @@ +def reexported_in_another_package_function3() -> str: ... + + +class ReexportedInAnotherPackageClass3: + pass + + +def _still_internal_function3(): ... diff --git a/tests/data/various_modules_package/attribute_module.py b/tests/data/various_modules_package/attribute_module.py index 05818940..d8432018 100644 --- a/tests/data/various_modules_package/attribute_module.py +++ b/tests/data/various_modules_package/attribute_module.py @@ -64,7 +64,7 @@ def some_func() -> bool: multi_attr_7 = multi_attr_8 = "A" attr_type_from_outside_package: AnotherClass - attr_default_value_from_outside_package = AnotherClass + attr_default_value_from_outside_package = AnotherClass() def __init__(self): self.init_attr: bool = False diff --git a/tests/data/various_modules_package/class_module.py b/tests/data/various_modules_package/class_module.py index f4fe3650..5a087b44 100644 --- a/tests/data/various_modules_package/class_module.py +++ b/tests/data/various_modules_package/class_module.py @@ -15,7 +15,8 @@ class ClassModuleClassC(ClassModuleEmptyClassA, ClassModuleClassB, yetAnotherCla attr_1: int attr_2: int - def f1(self): ... + def f1(self): + def f1_2(): ... class ClassModuleClassD: @@ -32,3 +33,11 @@ def _class_f_func(self): ... class _ClassModulePrivateClassG: _attr_1: float _attr_2: bool + + +class InheritFromException(ValueError): + ... + + +class InheritFromException2(Exception, InheritFromException, ClassModuleClassB): + ... diff --git a/tests/data/various_modules_package/file_creation/__init__.py b/tests/data/various_modules_package/file_creation/__init__.py index fac487d1..8e6b9658 100644 --- a/tests/data/various_modules_package/file_creation/__init__.py +++ b/tests/data/various_modules_package/file_creation/__init__.py @@ -1,9 +1,16 @@ from ._module_2 import _private_reexported from ._module_3 import Reexported from ._module_6 import public_reexported +from tests.data.various_modules_package.another_path._reexported_from_another_package import * +from tests.data.various_modules_package.another_path._reexported_from_another_package_2 import ReexportedInAnotherPackageClass2 +from tests.data.various_modules_package.another_path._reexported_from_another_package_2 import reexported_in_another_package_function2 +from tests.data.various_modules_package.another_path import _reexported_from_another_package_3 as reexported_from_another_package_3 __all__ = [ "_private_reexported", - "Reexported", "public_reexported", + "reexported_in_another_package_function2", + "Reexported", + "ReexportedInAnotherPackageClass2", + "reexported_from_another_package_3", ] diff --git a/tests/data/various_modules_package/function_module.py b/tests/data/various_modules_package/function_module.py index 0a7a1a38..29d1a2f2 100644 --- a/tests/data/various_modules_package/function_module.py +++ b/tests/data/various_modules_package/function_module.py @@ -92,6 +92,7 @@ def special_params( none_union: None | None, none_bool_union: None | bool, bool_none_union: bool | None, + bool_none_str: None | str, none_bool_none_union: None | bool | None, none_bool_int_union: None | bool | int, none_none_bool_none_union: None | None | bool | None, diff --git a/tests/data/various_modules_package/import_module.py b/tests/data/various_modules_package/import_module.py index 0cf1da12..8f4571ad 100644 --- a/tests/data/various_modules_package/import_module.py +++ b/tests/data/various_modules_package/import_module.py @@ -2,7 +2,8 @@ from class_module import ClassModuleClassB from class_module import ClassModuleClassC as ClMCC from class_module import ClassModuleClassD as ClMCD -from class_module import ClassModuleEmptyClassA as ClMECA +if True: + from class_module import ClassModuleEmptyClassA as ClMECA class ImportClass(AnotherClass): diff --git a/tests/data/various_modules_package/infer_types_module.py b/tests/data/various_modules_package/infer_types_module.py index 3256b6e2..002ae96d 100644 --- a/tests/data/various_modules_package/infer_types_module.py +++ b/tests/data/various_modules_package/infer_types_module.py @@ -16,7 +16,8 @@ class InferMyTypes: infer_bool = False infer_str = "String" infer_none = None - infer_obj = InferMe + infer_call_expr = InferMe() + uninferable_callable = InferMe def __init__(self, init_param=1): self.init_infer = 3 diff --git a/tests/data/various_modules_package/type_var_module.py b/tests/data/various_modules_package/type_var_module.py index d286c4d2..74cf5e12 100644 --- a/tests/data/various_modules_package/type_var_module.py +++ b/tests/data/various_modules_package/type_var_module.py @@ -1,9 +1,9 @@ -from typing import TypeVar, Generic +from typing import TypeVar, Generic, Sequence, Collection, Mapping, Any T = TypeVar('T') -class TypeVarClass(Generic[T]): +class GenericTypeVar(Generic[T]): type_var = TypeVar("type_var") def __init__(self, items: list[T]): ... @@ -11,12 +11,52 @@ def __init__(self, items: list[T]): ... def type_var_class_method(self, a: T) -> T: ... -class TypeVarClass2(Generic[T]): +class GenericTypeVar2(Generic[T]): type_var = TypeVar("type_var") def type_var_class_method2(self, a: T) -> T: ... +class SequenceTypeVar(Sequence[T]): + type_var = TypeVar("type_var") + + def __init__(self, items: list[T]): ... + + def type_var_class_method(self, a: T) -> T: ... + + +class SequenceTypeVar2(Sequence[T]): + type_var = TypeVar("type_var") + + def type_var_class_method2(self, a: T) -> T: ... + + +class CollectionTypeVar(Collection[T]): + type_var = TypeVar("type_var") + + def __init__(self, items: list[T]): ... + + def type_var_class_method(self, a: T) -> T: ... + + +class CollectionTypeVar2(Collection[T]): + type_var = TypeVar("type_var") + + def type_var_class_method2(self, a: T) -> T: ... + + +class MappingTypeVar(Mapping[str, Any]): + def __init__(self, data: Mapping[str, Any] | None = None): ... + + +class MappingTypeVar2: + def __init__(self, data: Mapping[str, Sequence[Any]]): ... + + +class MappingTypeVar3(Mapping[str, Collection[T]]): + def __init__(self, data: Mapping[str, Collection[T]] | None): ... + + _type_var = TypeVar("_type_var") def type_var_func(a: list[_type_var]) -> list[_type_var]: ... diff --git a/tests/safeds_stubgen/__snapshots__/test_main.ambr b/tests/safeds_stubgen/__snapshots__/test_main.ambr index 644f4266..12554bbd 100644 --- a/tests/safeds_stubgen/__snapshots__/test_main.ambr +++ b/tests/safeds_stubgen/__snapshots__/test_main.ambr @@ -8,7 +8,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/_init_attr_private', + 'id': 'tests/data/main_package/main_module/ModuleClass/_init_attr_private', 'is_public': False, 'is_static': False, 'name': '_init_attr_private', @@ -24,7 +24,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/attr_1', + 'id': 'tests/data/main_package/main_module/ModuleClass/attr_1', 'is_public': True, 'is_static': True, 'name': 'attr_1', @@ -40,7 +40,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/init_attr', + 'id': 'tests/data/main_package/main_module/ModuleClass/init_attr', 'is_public': True, 'is_static': False, 'name': 'init_attr', @@ -56,7 +56,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/_PrivateClass/NestedPrivateClass/nested_class_attr', + 'id': 'tests/data/main_package/main_module/_PrivateClass/NestedPrivateClass/nested_class_attr', 'is_public': False, 'is_static': True, 'name': 'nested_class_attr', @@ -72,7 +72,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/_PrivateClass/public_attr_in_private_class', + 'id': 'tests/data/main_package/main_module/_PrivateClass/public_attr_in_private_class', 'is_public': False, 'is_static': True, 'name': 'public_attr_in_private_class', @@ -88,7 +88,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/_PrivateClass/public_init_attr_in_private_class', + 'id': 'tests/data/main_package/main_module/_PrivateClass/public_init_attr_in_private_class', 'is_public': False, 'is_static': False, 'name': 'public_init_attr_in_private_class', @@ -110,7 +110,8 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/another_path/another_module/AnotherClass', + 'id': 'tests/data/main_package/another_path/another_module/AnotherClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ ]), @@ -132,10 +133,11 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/another_path/another_module/yetAnotherClass', + 'id': 'tests/data/main_package/another_path/another_module/yetAnotherClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'main_package/another_path/another_module/yetAnotherClass/another_function', + 'tests/data/main_package/another_path/another_module/yetAnotherClass/another_function', ]), 'name': 'yetAnotherClass', 'reexported_by': list([ @@ -147,12 +149,12 @@ }), dict({ 'attributes': list([ - 'main_package/main_module/ModuleClass/attr_1', - 'main_package/main_module/ModuleClass/init_attr', - 'main_package/main_module/ModuleClass/_init_attr_private', + 'tests/data/main_package/main_module/ModuleClass/attr_1', + 'tests/data/main_package/main_module/ModuleClass/init_attr', + 'tests/data/main_package/main_module/ModuleClass/_init_attr_private', ]), 'classes': list([ - 'main_package/main_module/ModuleClass/NestedClass', + 'tests/data/main_package/main_module/ModuleClass/NestedClass', ]), 'constructor': dict({ 'docstring': dict({ @@ -167,15 +169,15 @@ Full init description. ''', }), - 'id': 'main_package/main_module/ModuleClass/__init__', + 'id': 'tests/data/main_package/main_module/ModuleClass/__init__', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'main_package/main_module/ModuleClass/__init__/self', - 'main_package/main_module/ModuleClass/__init__/init_param_1', + 'tests/data/main_package/main_module/ModuleClass/__init__/self', + 'tests/data/main_package/main_module/ModuleClass/__init__/init_param_1', ]), 'reexported_by': list([ ]), @@ -194,10 +196,11 @@ Full description ''', }), - 'id': 'main_package/main_module/ModuleClass', + 'id': 'tests/data/main_package/main_module/ModuleClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'main_package/main_module/ModuleClass/_some_function', + 'tests/data/main_package/main_module/ModuleClass/_some_function', ]), 'name': 'ModuleClass', 'reexported_by': list([ @@ -218,10 +221,11 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/ModuleClass/NestedClass', + 'id': 'tests/data/main_package/main_module/ModuleClass/NestedClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'main_package/main_module/ModuleClass/NestedClass/nested_class_function', + 'tests/data/main_package/main_module/ModuleClass/NestedClass/nested_class_function', ]), 'name': 'NestedClass', 'reexported_by': list([ @@ -234,25 +238,25 @@ }), dict({ 'attributes': list([ - 'main_package/main_module/_PrivateClass/public_attr_in_private_class', - 'main_package/main_module/_PrivateClass/public_init_attr_in_private_class', + 'tests/data/main_package/main_module/_PrivateClass/public_attr_in_private_class', + 'tests/data/main_package/main_module/_PrivateClass/public_init_attr_in_private_class', ]), 'classes': list([ - 'main_package/main_module/_PrivateClass/NestedPrivateClass', + 'tests/data/main_package/main_module/_PrivateClass/NestedPrivateClass', ]), 'constructor': dict({ 'docstring': dict({ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/_PrivateClass/__init__', + 'id': 'tests/data/main_package/main_module/_PrivateClass/__init__', 'is_class_method': False, 'is_property': False, 'is_public': False, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'main_package/main_module/_PrivateClass/__init__/self', + 'tests/data/main_package/main_module/_PrivateClass/__init__/self', ]), 'reexported_by': list([ ]), @@ -263,10 +267,11 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/_PrivateClass', + 'id': 'tests/data/main_package/main_module/_PrivateClass', + 'inherits_from_exception': False, 'is_public': False, 'methods': list([ - 'main_package/main_module/_PrivateClass/public_func_in_private_class', + 'tests/data/main_package/main_module/_PrivateClass/public_func_in_private_class', ]), 'name': '_PrivateClass', 'reexported_by': list([ @@ -278,20 +283,21 @@ }), dict({ 'attributes': list([ - 'main_package/main_module/_PrivateClass/NestedPrivateClass/nested_class_attr', + 'tests/data/main_package/main_module/_PrivateClass/NestedPrivateClass/nested_class_attr', ]), 'classes': list([ - 'main_package/main_module/_PrivateClass/NestedPrivateClass/NestedNestedPrivateClass', + 'tests/data/main_package/main_module/_PrivateClass/NestedPrivateClass/NestedNestedPrivateClass', ]), 'constructor': None, 'docstring': dict({ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/_PrivateClass/NestedPrivateClass', - 'is_public': True, + 'id': 'tests/data/main_package/main_module/_PrivateClass/NestedPrivateClass', + 'inherits_from_exception': False, + 'is_public': False, 'methods': list([ - 'main_package/main_module/_PrivateClass/NestedPrivateClass/static_nested_private_class_function', + 'tests/data/main_package/main_module/_PrivateClass/NestedPrivateClass/static_nested_private_class_function', ]), 'name': 'NestedPrivateClass', 'reexported_by': list([ @@ -311,8 +317,9 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/_PrivateClass/NestedPrivateClass/NestedNestedPrivateClass', - 'is_public': True, + 'id': 'tests/data/main_package/main_module/_PrivateClass/NestedPrivateClass/NestedNestedPrivateClass', + 'inherits_from_exception': False, + 'is_public': False, 'methods': list([ ]), 'name': 'NestedNestedPrivateClass', @@ -335,19 +342,19 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/another_path/another_module/yetAnotherClass/another_function', + 'id': 'tests/data/main_package/another_path/another_module/yetAnotherClass/another_function', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'another_function', 'parameters': list([ - 'main_package/another_path/another_module/yetAnotherClass/another_function/self', + 'tests/data/main_package/another_path/another_module/yetAnotherClass/another_function/self', ]), 'reexported_by': list([ ]), 'results': list([ - 'main_package/another_path/another_module/yetAnotherClass/another_function/result_1', + 'tests/data/main_package/another_path/another_module/yetAnotherClass/another_function/result_1', ]), }), dict({ @@ -355,20 +362,20 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/ModuleClass/NestedClass/nested_class_function', + 'id': 'tests/data/main_package/main_module/ModuleClass/NestedClass/nested_class_function', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'nested_class_function', 'parameters': list([ - 'main_package/main_module/ModuleClass/NestedClass/nested_class_function/self', - 'main_package/main_module/ModuleClass/NestedClass/nested_class_function/param_1', + 'tests/data/main_package/main_module/ModuleClass/NestedClass/nested_class_function/self', + 'tests/data/main_package/main_module/ModuleClass/NestedClass/nested_class_function/param_1', ]), 'reexported_by': list([ ]), 'results': list([ - 'main_package/main_module/ModuleClass/NestedClass/nested_class_function/result_1', + 'tests/data/main_package/main_module/ModuleClass/NestedClass/nested_class_function/result_1', ]), }), dict({ @@ -384,15 +391,15 @@ Full init description. ''', }), - 'id': 'main_package/main_module/ModuleClass/__init__', + 'id': 'tests/data/main_package/main_module/ModuleClass/__init__', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'main_package/main_module/ModuleClass/__init__/self', - 'main_package/main_module/ModuleClass/__init__/init_param_1', + 'tests/data/main_package/main_module/ModuleClass/__init__/self', + 'tests/data/main_package/main_module/ModuleClass/__init__/init_param_1', ]), 'reexported_by': list([ ]), @@ -412,21 +419,21 @@ param_2: bool. ''', }), - 'id': 'main_package/main_module/ModuleClass/_some_function', + 'id': 'tests/data/main_package/main_module/ModuleClass/_some_function', 'is_class_method': False, 'is_property': False, 'is_public': False, 'is_static': False, 'name': '_some_function', 'parameters': list([ - 'main_package/main_module/ModuleClass/_some_function/self', - 'main_package/main_module/ModuleClass/_some_function/param_1', - 'main_package/main_module/ModuleClass/_some_function/param_2', + 'tests/data/main_package/main_module/ModuleClass/_some_function/self', + 'tests/data/main_package/main_module/ModuleClass/_some_function/param_1', + 'tests/data/main_package/main_module/ModuleClass/_some_function/param_2', ]), 'reexported_by': list([ ]), 'results': list([ - 'main_package/main_module/ModuleClass/_some_function/result_1', + 'tests/data/main_package/main_module/ModuleClass/_some_function/result_1', ]), }), dict({ @@ -434,7 +441,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/_PrivateClass/NestedPrivateClass/static_nested_private_class_function', + 'id': 'tests/data/main_package/main_module/_PrivateClass/NestedPrivateClass/static_nested_private_class_function', 'is_class_method': False, 'is_property': False, 'is_public': False, @@ -452,14 +459,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/_PrivateClass/__init__', + 'id': 'tests/data/main_package/main_module/_PrivateClass/__init__', 'is_class_method': False, 'is_property': False, 'is_public': False, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'main_package/main_module/_PrivateClass/__init__/self', + 'tests/data/main_package/main_module/_PrivateClass/__init__/self', ]), 'reexported_by': list([ ]), @@ -471,14 +478,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/_PrivateClass/public_func_in_private_class', + 'id': 'tests/data/main_package/main_module/_PrivateClass/public_func_in_private_class', 'is_class_method': False, 'is_property': False, 'is_public': False, 'is_static': False, 'name': 'public_func_in_private_class', 'parameters': list([ - 'main_package/main_module/_PrivateClass/public_func_in_private_class/self', + 'tests/data/main_package/main_module/_PrivateClass/public_func_in_private_class/self', ]), 'reexported_by': list([ ]), @@ -490,7 +497,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'main_package/main_module/_private_global_func', + 'id': 'tests/data/main_package/main_module/_private_global_func', 'is_class_method': False, 'is_property': False, 'is_public': False, @@ -501,7 +508,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'main_package/main_module/_private_global_func/result_1', + 'tests/data/main_package/main_module/_private_global_func/result_1', ]), }), dict({ @@ -517,28 +524,28 @@ Docstring 2. ''', }), - 'id': 'main_package/main_module/global_func', + 'id': 'tests/data/main_package/main_module/global_func', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'global_func', 'parameters': list([ - 'main_package/main_module/global_func/main_test_param_1', - 'main_package/main_module/global_func/main_test_param_2', + 'tests/data/main_package/main_module/global_func/main_test_param_1', + 'tests/data/main_package/main_module/global_func/main_test_param_2', ]), 'reexported_by': list([ ]), 'results': list([ - 'main_package/main_module/global_func/result_1', + 'tests/data/main_package/main_module/global_func/result_1', ]), }), ]), 'modules': list([ dict({ 'classes': list([ - 'main_package/another_path/another_module/AnotherClass', - 'main_package/another_path/another_module/yetAnotherClass', + 'tests/data/main_package/another_path/another_module/AnotherClass', + 'tests/data/main_package/another_path/another_module/yetAnotherClass', ]), 'docstring': ''' Another Module Docstring. @@ -550,7 +557,7 @@ ]), 'functions': list([ ]), - 'id': 'main_package/another_path/another_module', + 'id': 'tests/data/main_package/another_path/another_module', 'name': 'another_module', 'qualified_imports': list([ ]), @@ -559,17 +566,17 @@ }), dict({ 'classes': list([ - 'main_package/main_module/ModuleClass', - 'main_package/main_module/_PrivateClass', + 'tests/data/main_package/main_module/ModuleClass', + 'tests/data/main_package/main_module/_PrivateClass', ]), 'docstring': 'Docstring of the some_class.py module.', 'enums': list([ ]), 'functions': list([ - 'main_package/main_module/global_func', - 'main_package/main_module/_private_global_func', + 'tests/data/main_package/main_module/global_func', + 'tests/data/main_package/main_module/_private_global_func', ]), - 'id': 'main_package/main_module', + 'id': 'tests/data/main_package/main_module', 'name': 'main_module', 'qualified_imports': list([ dict({ @@ -606,7 +613,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/another_path/another_module/yetAnotherClass/another_function/self', + 'id': 'tests/data/main_package/another_path/another_module/yetAnotherClass/another_function/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -619,7 +626,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/NestedClass/nested_class_function/param_1', + 'id': 'tests/data/main_package/main_module/ModuleClass/NestedClass/nested_class_function/param_1', 'is_optional': False, 'name': 'param_1', 'type': dict({ @@ -636,7 +643,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/NestedClass/nested_class_function/self', + 'id': 'tests/data/main_package/main_module/ModuleClass/NestedClass/nested_class_function/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -649,7 +656,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/__init__/init_param_1', + 'id': 'tests/data/main_package/main_module/ModuleClass/__init__/init_param_1', 'is_optional': False, 'name': 'init_param_1', 'type': None, @@ -662,7 +669,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/__init__/self', + 'id': 'tests/data/main_package/main_module/ModuleClass/__init__/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -675,7 +682,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/_some_function/param_1', + 'id': 'tests/data/main_package/main_module/ModuleClass/_some_function/param_1', 'is_optional': False, 'name': 'param_1', 'type': dict({ @@ -692,7 +699,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/_some_function/param_2', + 'id': 'tests/data/main_package/main_module/ModuleClass/_some_function/param_2', 'is_optional': True, 'name': 'param_2', 'type': dict({ @@ -709,7 +716,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/_some_function/self', + 'id': 'tests/data/main_package/main_module/ModuleClass/_some_function/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -722,7 +729,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/_PrivateClass/__init__/self', + 'id': 'tests/data/main_package/main_module/_PrivateClass/__init__/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -735,7 +742,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/_PrivateClass/public_func_in_private_class/self', + 'id': 'tests/data/main_package/main_module/_PrivateClass/public_func_in_private_class/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -748,7 +755,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/global_func/main_test_param_1', + 'id': 'tests/data/main_package/main_module/global_func/main_test_param_1', 'is_optional': True, 'name': 'main_test_param_1', 'type': dict({ @@ -765,7 +772,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/global_func/main_test_param_2', + 'id': 'tests/data/main_package/main_module/global_func/main_test_param_2', 'is_optional': True, 'name': 'main_test_param_2', 'type': dict({ @@ -791,7 +798,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/another_path/another_module/yetAnotherClass/another_function/result_1', + 'id': 'tests/data/main_package/another_path/another_module/yetAnotherClass/another_function/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -804,7 +811,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/NestedClass/nested_class_function/result_1', + 'id': 'tests/data/main_package/main_module/ModuleClass/NestedClass/nested_class_function/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'SetType', @@ -832,7 +839,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/ModuleClass/_some_function/result_1', + 'id': 'tests/data/main_package/main_module/ModuleClass/_some_function/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -845,7 +852,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/_private_global_func/result_1', + 'id': 'tests/data/main_package/main_module/_private_global_func/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'UnionType', @@ -873,7 +880,7 @@ 'description': '', 'type': '', }), - 'id': 'main_package/main_module/global_func/result_1', + 'id': 'tests/data/main_package/main_module/global_func/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', diff --git a/tests/safeds_stubgen/api_analyzer/__snapshots__/test__get_api.ambr b/tests/safeds_stubgen/api_analyzer/__snapshots__/test__get_api.ambr index af97144d..b2256837 100644 --- a/tests/safeds_stubgen/api_analyzer/__snapshots__/test__get_api.ambr +++ b/tests/safeds_stubgen/api_analyzer/__snapshots__/test__get_api.ambr @@ -7,7 +7,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/_ignore_me', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/_ignore_me', 'is_public': False, 'is_static': True, 'name': '_ignore_me', @@ -23,7 +23,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/_multi_attr_2_private', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/_multi_attr_2_private', 'is_public': False, 'is_static': True, 'name': '_multi_attr_2_private', @@ -39,7 +39,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/_multi_attr_4_private', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/_multi_attr_4_private', 'is_public': False, 'is_static': True, 'name': '_multi_attr_4_private', @@ -60,7 +60,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/_no_type_hint_private', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/_no_type_hint_private', 'is_public': False, 'is_static': True, 'name': '_no_type_hint_private', @@ -76,7 +76,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/_type_hint_private', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/_type_hint_private', 'is_public': False, 'is_static': True, 'name': '_type_hint_private', @@ -92,19 +92,14 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/attr_default_value_from_outside_package', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/attr_default_value_from_outside_package', 'is_public': True, 'is_static': True, 'name': 'attr_default_value_from_outside_package', 'type': dict({ - 'kind': 'CallableType', - 'parameter_types': list([ - ]), - 'return_type': dict({ - 'kind': 'NamedType', - 'name': 'AnotherClass', - 'qname': 'tests.data.main_package.another_path.another_module.AnotherClass', - }), + 'kind': 'NamedType', + 'name': 'AnotherClass', + 'qname': 'tests.data.main_package.another_path.another_module.AnotherClass', }), }), dict({ @@ -113,7 +108,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/attr_type_from_outside_package', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/attr_type_from_outside_package', 'is_public': True, 'is_static': True, 'name': 'attr_type_from_outside_package', @@ -129,7 +124,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/bool_attr', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/bool_attr', 'is_public': True, 'is_static': True, 'name': 'bool_attr', @@ -145,7 +140,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/callexpr_attr_class', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/callexpr_attr_class', 'is_public': True, 'is_static': True, 'name': 'callexpr_attr_class', @@ -157,7 +152,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/callexpr_attr_function', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/callexpr_attr_function', 'is_public': True, 'is_static': True, 'name': 'callexpr_attr_function', @@ -169,7 +164,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/defined_three_times', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/defined_three_times', 'is_public': True, 'is_static': True, 'name': 'defined_three_times', @@ -185,7 +180,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/dict_attr_1', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/dict_attr_1', 'is_public': True, 'is_static': True, 'name': 'dict_attr_1', @@ -209,7 +204,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/dict_attr_2', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/dict_attr_2', 'is_public': True, 'is_static': True, 'name': 'dict_attr_2', @@ -233,7 +228,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/dict_attr_3', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/dict_attr_3', 'is_public': True, 'is_static': True, 'name': 'dict_attr_3', @@ -277,7 +272,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/final', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/final', 'is_public': True, 'is_static': True, 'name': 'final', @@ -296,7 +291,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/final_union', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/final_union', 'is_public': True, 'is_static': True, 'name': 'final_union', @@ -325,7 +320,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/finals', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/finals', 'is_public': True, 'is_static': True, 'name': 'finals', @@ -354,7 +349,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/flaot_attr', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/flaot_attr', 'is_public': True, 'is_static': True, 'name': 'flaot_attr', @@ -370,7 +365,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/init_attr', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/init_attr', 'is_public': True, 'is_static': False, 'name': 'init_attr', @@ -386,7 +381,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/int_or_bool_attr', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/int_or_bool_attr', 'is_public': True, 'is_static': True, 'name': 'int_or_bool_attr', @@ -412,7 +407,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/list_attr_1', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/list_attr_1', 'is_public': True, 'is_static': True, 'name': 'list_attr_1', @@ -428,7 +423,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/list_attr_2', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/list_attr_2', 'is_public': True, 'is_static': True, 'name': 'list_attr_2', @@ -446,7 +441,7 @@ dict({ 'kind': 'NamedType', 'name': 'AttributesClassA', - 'qname': 'various_modules_package.attribute_module.AttributesClassA', + 'qname': 'tests.data.various_modules_package.attribute_module.AttributesClassA', }), ]), }), @@ -459,7 +454,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/list_attr_3', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/list_attr_3', 'is_public': True, 'is_static': True, 'name': 'list_attr_3', @@ -474,7 +469,7 @@ dict({ 'kind': 'NamedType', 'name': 'AttributesClassA', - 'qname': 'various_modules_package.attribute_module.AttributesClassA', + 'qname': 'tests.data.various_modules_package.attribute_module.AttributesClassA', }), ]), }), @@ -485,7 +480,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/list_attr_4', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/list_attr_4', 'is_public': True, 'is_static': True, 'name': 'list_attr_4', @@ -503,7 +498,7 @@ dict({ 'kind': 'NamedType', 'name': 'AttributesClassA', - 'qname': 'various_modules_package.attribute_module.AttributesClassA', + 'qname': 'tests.data.various_modules_package.attribute_module.AttributesClassA', }), dict({ 'kind': 'NamedType', @@ -521,7 +516,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/literal', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/literal', 'is_public': True, 'is_static': True, 'name': 'literal', @@ -538,7 +533,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/mixed_literal_union', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/mixed_literal_union', 'is_public': True, 'is_static': True, 'name': 'mixed_literal_union', @@ -588,7 +583,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/multi_attr_1', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/multi_attr_1', 'is_public': True, 'is_static': True, 'name': 'multi_attr_1', @@ -604,7 +599,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/multi_attr_3', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/multi_attr_3', 'is_public': True, 'is_static': True, 'name': 'multi_attr_3', @@ -625,7 +620,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/multi_attr_5', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/multi_attr_5', 'is_public': True, 'is_static': True, 'name': 'multi_attr_5', @@ -641,7 +636,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/multi_attr_6', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/multi_attr_6', 'is_public': True, 'is_static': True, 'name': 'multi_attr_6', @@ -657,7 +652,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/multi_attr_7', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/multi_attr_7', 'is_public': True, 'is_static': True, 'name': 'multi_attr_7', @@ -673,7 +668,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/multi_attr_8', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/multi_attr_8', 'is_public': True, 'is_static': True, 'name': 'multi_attr_8', @@ -689,7 +684,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/multiple_literals', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/multiple_literals', 'is_public': True, 'is_static': True, 'name': 'multiple_literals', @@ -729,7 +724,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/no_type_hint_public', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/no_type_hint_public', 'is_public': True, 'is_static': True, 'name': 'no_type_hint_public', @@ -745,7 +740,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/none_attr', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/none_attr', 'is_public': True, 'is_static': True, 'name': 'none_attr', @@ -761,7 +756,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/object_attr', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/object_attr', 'is_public': True, 'is_static': True, 'name': 'object_attr', @@ -777,7 +772,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/optional', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/optional', 'is_public': True, 'is_static': True, 'name': 'optional', @@ -803,7 +798,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/set_attr_1', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/set_attr_1', 'is_public': True, 'is_static': True, 'name': 'set_attr_1', @@ -824,7 +819,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/set_attr_2', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/set_attr_2', 'is_public': True, 'is_static': True, 'name': 'set_attr_2', @@ -855,7 +850,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/set_attr_3', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/set_attr_3', 'is_public': True, 'is_static': True, 'name': 'set_attr_3', @@ -870,7 +865,7 @@ dict({ 'kind': 'NamedType', 'name': 'AttributesClassA', - 'qname': 'various_modules_package.attribute_module.AttributesClassA', + 'qname': 'tests.data.various_modules_package.attribute_module.AttributesClassA', }), ]), }), @@ -881,7 +876,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/set_attr_4', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/set_attr_4', 'is_public': True, 'is_static': True, 'name': 'set_attr_4', @@ -899,7 +894,7 @@ dict({ 'kind': 'NamedType', 'name': 'AttributesClassA', - 'qname': 'various_modules_package.attribute_module.AttributesClassA', + 'qname': 'tests.data.various_modules_package.attribute_module.AttributesClassA', }), dict({ 'kind': 'NamedType', @@ -917,7 +912,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/str_attr_with_none_value', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/str_attr_with_none_value', 'is_public': True, 'is_static': True, 'name': 'str_attr_with_none_value', @@ -933,7 +928,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/tuple_attr_1', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/tuple_attr_1', 'is_public': True, 'is_static': True, 'name': 'tuple_attr_1', @@ -954,7 +949,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/tuple_attr_2', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/tuple_attr_2', 'is_public': True, 'is_static': True, 'name': 'tuple_attr_2', @@ -985,7 +980,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/tuple_attr_3', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/tuple_attr_3', 'is_public': True, 'is_static': True, 'name': 'tuple_attr_3', @@ -1011,7 +1006,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/attribute_module/AttributesClassB/type_hint_public', + 'id': 'tests/data/various_modules_package/attribute_module/AttributesClassB/type_hint_public', 'is_public': True, 'is_static': True, 'name': 'type_hint_public', @@ -1031,7 +1026,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_nested_attr_2', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_nested_attr_2', 'is_public': False, 'is_static': True, 'name': '_nested_attr_2', @@ -1047,7 +1042,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/nested_attr_1', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/nested_attr_1', 'is_public': True, 'is_static': True, 'name': 'nested_attr_1', @@ -1067,7 +1062,7 @@ 'description': 'Attribute of the calculator. (Google Style)', 'type': 'str', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass/attr_1', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/attr_1', 'is_public': True, 'is_static': True, 'name': 'attr_1', @@ -1087,7 +1082,7 @@ 'description': 'Attribute of the calculator. (Numpy)', 'type': 'str', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass/attr_1', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/attr_1', 'is_public': True, 'is_static': True, 'name': 'attr_1', @@ -1107,7 +1102,7 @@ 'description': 'Attribute of the calculator. (ReST)', 'type': 'str', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass/attr_1', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass/attr_1', 'is_public': True, 'is_static': True, 'name': 'attr_1', @@ -1127,7 +1122,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/class_module/_ClassModulePrivateClassG/_attr_1', + 'id': 'tests/data/various_modules_package/class_module/_ClassModulePrivateClassG/_attr_1', 'is_public': False, 'is_static': True, 'name': '_attr_1', @@ -1143,7 +1138,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/class_module/_ClassModulePrivateClassG/_attr_2', + 'id': 'tests/data/various_modules_package/class_module/_ClassModulePrivateClassG/_attr_2', 'is_public': False, 'is_static': True, 'name': '_attr_2', @@ -1162,14 +1157,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'abstract_method', 'parameters': list([ - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method/self', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method/self', ]), 'reexported_by': list([ ]), @@ -1181,22 +1176,22 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'abstract_method_params', 'parameters': list([ - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/self', - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_1', - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_2', - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_3', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/self', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_1', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_2', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_3', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/result_1', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/result_1', ]), }), dict({ @@ -1204,20 +1199,20 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method', 'is_class_method': False, 'is_property': True, 'is_public': True, 'is_static': False, 'name': 'abstract_property_method', 'parameters': list([ - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/self', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/self', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/result_1', - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/result_2', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/result_1', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/result_2', ]), }), dict({ @@ -1225,7 +1220,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -1243,19 +1238,19 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': True, 'name': 'abstract_static_method_params', 'parameters': list([ - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params/param', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params/param', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params/result_1', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params/result_1', ]), }), ]) @@ -1267,14 +1262,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassB/f', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassB/f', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'f', 'parameters': list([ - 'various_modules_package/class_module/ClassModuleClassB/f/self', + 'tests/data/various_modules_package/class_module/ClassModuleClassB/f/self', ]), 'reexported_by': list([ ]), @@ -1290,14 +1285,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassC/f1', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassC/f1', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'f1', 'parameters': list([ - 'various_modules_package/class_module/ClassModuleClassC/f1/self', + 'tests/data/various_modules_package/class_module/ClassModuleClassC/f1/self', ]), 'reexported_by': list([ ]), @@ -1317,18 +1312,68 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/class_e_func', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/class_e_func', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'class_e_func', 'parameters': list([ - 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/class_e_func/self', + 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/class_e_func/self', + ]), + 'reexported_by': list([ + ]), + 'results': list([ + ]), + }), + ]) +# --- +# name: test_class_methods[CollectionTypeVar2] + list([ + dict({ + 'docstring': dict({ + 'description': '', + 'full_docstring': '', + }), + 'id': 'tests/data/various_modules_package/type_var_module/CollectionTypeVar2/type_var_class_method2', + 'is_class_method': False, + 'is_property': False, + 'is_public': True, + 'is_static': False, + 'name': 'type_var_class_method2', + 'parameters': list([ + 'tests/data/various_modules_package/type_var_module/CollectionTypeVar2/type_var_class_method2/self', + 'tests/data/various_modules_package/type_var_module/CollectionTypeVar2/type_var_class_method2/a', + ]), + 'reexported_by': list([ + ]), + 'results': list([ + 'tests/data/various_modules_package/type_var_module/CollectionTypeVar2/type_var_class_method2/result_1', + ]), + }), + ]) +# --- +# name: test_class_methods[CollectionTypeVar] + list([ + dict({ + 'docstring': dict({ + 'description': '', + 'full_docstring': '', + }), + 'id': 'tests/data/various_modules_package/type_var_module/CollectionTypeVar/type_var_class_method', + 'is_class_method': False, + 'is_property': False, + 'is_public': True, + 'is_static': False, + 'name': 'type_var_class_method', + 'parameters': list([ + 'tests/data/various_modules_package/type_var_module/CollectionTypeVar/type_var_class_method/self', + 'tests/data/various_modules_package/type_var_module/CollectionTypeVar/type_var_class_method/a', ]), 'reexported_by': list([ ]), 'results': list([ + 'tests/data/various_modules_package/type_var_module/CollectionTypeVar/type_var_class_method/result_1', ]), }), ]) @@ -1349,21 +1394,21 @@ @rtype: bool ''', }), - 'id': 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func', + 'id': 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'epydoc_docstring_func', 'parameters': list([ - 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/self', - 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/x', - 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/y', + 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/self', + 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/x', + 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/y', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/result_1', + 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/result_1', ]), }), ]) @@ -1375,14 +1420,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/class_method', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method', 'is_class_method': True, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'class_method', 'parameters': list([ - 'various_modules_package/function_module/FunctionModuleClassB/class_method/cls', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method/cls', ]), 'reexported_by': list([ ]), @@ -1394,20 +1439,20 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/class_method_params', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method_params', 'is_class_method': True, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'class_method_params', 'parameters': list([ - 'various_modules_package/function_module/FunctionModuleClassB/class_method_params/cls', - 'various_modules_package/function_module/FunctionModuleClassB/class_method_params/param_1', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method_params/cls', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method_params/param_1', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/FunctionModuleClassB/class_method_params/result_1', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method_params/result_1', ]), }), dict({ @@ -1415,20 +1460,20 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/instance_method', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/instance_method', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'instance_method', 'parameters': list([ - 'various_modules_package/function_module/FunctionModuleClassB/instance_method/self', - 'various_modules_package/function_module/FunctionModuleClassB/instance_method/a', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/instance_method/self', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/instance_method/a', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/FunctionModuleClassB/instance_method/result_1', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/instance_method/result_1', ]), }), dict({ @@ -1436,7 +1481,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/static_method', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/static_method', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -1454,14 +1499,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/static_method_params', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/static_method_params', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': True, 'name': 'static_method_params', 'parameters': list([ - 'various_modules_package/function_module/FunctionModuleClassB/static_method_params/param_1', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/static_method_params/param_1', ]), 'reexported_by': list([ ]), @@ -1477,20 +1522,20 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'nested_class_function', 'parameters': list([ - 'various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/self', - 'various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/param1', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/self', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/param1', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/result_1', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/result_1', ]), }), ]) @@ -1502,14 +1547,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function', + 'id': 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function', 'is_class_method': False, 'is_property': True, 'is_public': True, 'is_static': False, 'name': 'property_function', 'parameters': list([ - 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function/self', + 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function/self', ]), 'reexported_by': list([ ]), @@ -1521,19 +1566,19 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function_infer', + 'id': 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function_infer', 'is_class_method': False, 'is_property': True, 'is_public': True, 'is_static': False, 'name': 'property_function_infer', 'parameters': list([ - 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function_infer/self', + 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function_infer/self', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function_infer/result_1', + 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function_infer/result_1', ]), }), dict({ @@ -1541,19 +1586,69 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function_params', + 'id': 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function_params', 'is_class_method': False, 'is_property': True, 'is_public': True, 'is_static': False, 'name': 'property_function_params', 'parameters': list([ - 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function_params/self', + 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function_params/self', + ]), + 'reexported_by': list([ + ]), + 'results': list([ + 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function_params/result_1', + ]), + }), + ]) +# --- +# name: test_class_methods[GenericTypeVar2] + list([ + dict({ + 'docstring': dict({ + 'description': '', + 'full_docstring': '', + }), + 'id': 'tests/data/various_modules_package/type_var_module/GenericTypeVar2/type_var_class_method2', + 'is_class_method': False, + 'is_property': False, + 'is_public': True, + 'is_static': False, + 'name': 'type_var_class_method2', + 'parameters': list([ + 'tests/data/various_modules_package/type_var_module/GenericTypeVar2/type_var_class_method2/self', + 'tests/data/various_modules_package/type_var_module/GenericTypeVar2/type_var_class_method2/a', + ]), + 'reexported_by': list([ + ]), + 'results': list([ + 'tests/data/various_modules_package/type_var_module/GenericTypeVar2/type_var_class_method2/result_1', + ]), + }), + ]) +# --- +# name: test_class_methods[GenericTypeVar] + list([ + dict({ + 'docstring': dict({ + 'description': '', + 'full_docstring': '', + }), + 'id': 'tests/data/various_modules_package/type_var_module/GenericTypeVar/type_var_class_method', + 'is_class_method': False, + 'is_property': False, + 'is_public': True, + 'is_static': False, + 'name': 'type_var_class_method', + 'parameters': list([ + 'tests/data/various_modules_package/type_var_module/GenericTypeVar/type_var_class_method/self', + 'tests/data/various_modules_package/type_var_module/GenericTypeVar/type_var_class_method/a', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function_params/result_1', + 'tests/data/various_modules_package/type_var_module/GenericTypeVar/type_var_class_method/result_1', ]), }), ]) @@ -1583,21 +1678,21 @@ a boolean value. (Google Style) ''', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'google_docstring_func', 'parameters': list([ - 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/self', - 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/x', - 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/y', + 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/self', + 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/x', + 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/y', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/result_1', + 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/result_1', ]), }), ]) @@ -1609,19 +1704,19 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/_', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/_', 'is_class_method': False, 'is_property': False, 'is_public': False, 'is_static': False, 'name': '_', 'parameters': list([ - 'various_modules_package/infer_types_module/InferMyTypes/_/self', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/_/self', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/infer_types_module/InferMyTypes/_/result_1', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/_/result_1', ]), }), dict({ @@ -1629,14 +1724,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/infer_call_result_1', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_call_result_1', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'infer_call_result_1', 'parameters': list([ - 'various_modules_package/infer_types_module/InferMyTypes/infer_call_result_1/self', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_call_result_1/self', ]), 'reexported_by': list([ ]), @@ -1648,14 +1743,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/infer_call_result_2', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_call_result_2', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'infer_call_result_2', 'parameters': list([ - 'various_modules_package/infer_types_module/InferMyTypes/infer_call_result_2/self', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_call_result_2/self', ]), 'reexported_by': list([ ]), @@ -1667,22 +1762,22 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/infer_function', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': True, 'name': 'infer_function', 'parameters': list([ - 'various_modules_package/infer_types_module/InferMyTypes/infer_function/infer_param', - 'various_modules_package/infer_types_module/InferMyTypes/infer_function/infer_param_2', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function/infer_param', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function/infer_param_2', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/infer_types_module/InferMyTypes/infer_function/result_1', - 'various_modules_package/infer_types_module/InferMyTypes/infer_function/result_2', - 'various_modules_package/infer_types_module/InferMyTypes/infer_function/result_3', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function/result_1', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function/result_2', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function/result_3', ]), }), dict({ @@ -1690,19 +1785,19 @@ 'description': 'Test for inferring results with just one possible result, and not a tuple of results.', 'full_docstring': 'Test for inferring results with just one possible result, and not a tuple of results.', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/infer_function_2', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function_2', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': True, 'name': 'infer_function_2', 'parameters': list([ - 'various_modules_package/infer_types_module/InferMyTypes/infer_function_2/i', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function_2/i', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/infer_types_module/InferMyTypes/infer_function_2/result_1', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function_2/result_1', ]), }), dict({ @@ -1710,23 +1805,23 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': True, 'name': 'infer_param_types', 'parameters': list([ - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/integer', - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/boolean', - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/float_', - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/none', - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/string', - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/callexpr', - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/int_list', - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/dictionary', - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/string_set', - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types/tuple_', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/integer', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/boolean', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/float_', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/none', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/string', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/callexpr', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/int_list', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/dictionary', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/string_set', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types/tuple_', ]), 'reexported_by': list([ ]), @@ -1762,21 +1857,21 @@ Checks if the sum of `x` and `y` is greater than 10. (Numpy) ''', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'numpy_docstring_func', 'parameters': list([ - 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/self', - 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/x', - 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/y', + 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/self', + 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/x', + 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/y', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/result_1', + 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/result_1', ]), }), ]) @@ -1788,7 +1883,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_1/ReexportClass/_private_class_method_of_reexported_class', + 'id': 'tests/data/various_modules_package/_reexport_module_1/ReexportClass/_private_class_method_of_reexported_class', 'is_class_method': False, 'is_property': False, 'is_public': False, @@ -1797,7 +1892,7 @@ 'parameters': list([ ]), 'reexported_by': list([ - 'various_modules_package/__init__', + 'tests/data/various_modules_package', ]), 'results': list([ ]), @@ -1825,46 +1920,71 @@ :rtype: bool ''', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'rest_docstring_func', 'parameters': list([ - 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/self', - 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/x', - 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/y', + 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/self', + 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/x', + 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/y', + ]), + 'reexported_by': list([ + ]), + 'results': list([ + 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/result_1', + ]), + }), + ]) +# --- +# name: test_class_methods[SequenceTypeVar2] + list([ + dict({ + 'docstring': dict({ + 'description': '', + 'full_docstring': '', + }), + 'id': 'tests/data/various_modules_package/type_var_module/SequenceTypeVar2/type_var_class_method2', + 'is_class_method': False, + 'is_property': False, + 'is_public': True, + 'is_static': False, + 'name': 'type_var_class_method2', + 'parameters': list([ + 'tests/data/various_modules_package/type_var_module/SequenceTypeVar2/type_var_class_method2/self', + 'tests/data/various_modules_package/type_var_module/SequenceTypeVar2/type_var_class_method2/a', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/result_1', + 'tests/data/various_modules_package/type_var_module/SequenceTypeVar2/type_var_class_method2/result_1', ]), }), ]) # --- -# name: test_class_methods[TypeVarClass] +# name: test_class_methods[SequenceTypeVar] list([ dict({ 'docstring': dict({ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/type_var_module/TypeVarClass/type_var_class_method', + 'id': 'tests/data/various_modules_package/type_var_module/SequenceTypeVar/type_var_class_method', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'type_var_class_method', 'parameters': list([ - 'various_modules_package/type_var_module/TypeVarClass/type_var_class_method/self', - 'various_modules_package/type_var_module/TypeVarClass/type_var_class_method/a', + 'tests/data/various_modules_package/type_var_module/SequenceTypeVar/type_var_class_method/self', + 'tests/data/various_modules_package/type_var_module/SequenceTypeVar/type_var_class_method/a', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/type_var_module/TypeVarClass/type_var_class_method/result_1', + 'tests/data/various_modules_package/type_var_module/SequenceTypeVar/type_var_class_method/result_1', ]), }), ]) @@ -1876,14 +1996,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF/_class_f_func', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF/_class_f_func', 'is_class_method': False, 'is_property': False, 'is_public': False, 'is_static': False, 'name': '_class_f_func', 'parameters': list([ - 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF/_class_f_func/self', + 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF/_class_f_func/self', ]), 'reexported_by': list([ ]), @@ -1903,15 +2023,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/__init__', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/__init__', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'various_modules_package/abstract_module/AbstractModuleClass/__init__/self', - 'various_modules_package/abstract_module/AbstractModuleClass/__init__/param', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/__init__/self', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/__init__/param', ]), 'reexported_by': list([ ]), @@ -1922,14 +2042,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method', - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params', - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method', - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params', - 'various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params', + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method', ]), 'name': 'AbstractModuleClass', 'reexported_by': list([ @@ -1952,7 +2073,8 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_2/AnotherReexportClass', + 'id': 'tests/data/various_modules_package/_reexport_module_2/AnotherReexportClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ ]), @@ -1976,16 +2098,16 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassB/__init__', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassB/__init__', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'various_modules_package/class_module/ClassModuleClassB/__init__/self', - 'various_modules_package/class_module/ClassModuleClassB/__init__/a', - 'various_modules_package/class_module/ClassModuleClassB/__init__/b', + 'tests/data/various_modules_package/class_module/ClassModuleClassB/__init__/self', + 'tests/data/various_modules_package/class_module/ClassModuleClassB/__init__/a', + 'tests/data/various_modules_package/class_module/ClassModuleClassB/__init__/b', ]), 'reexported_by': list([ ]), @@ -1996,10 +2118,11 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassB', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassB', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/class_module/ClassModuleClassB/f', + 'tests/data/various_modules_package/class_module/ClassModuleClassB/f', ]), 'name': 'ClassModuleClassB', 'reexported_by': list([ @@ -2014,8 +2137,8 @@ # name: test_classes[ClassModuleClassC] dict({ 'attributes': list([ - 'various_modules_package/class_module/ClassModuleClassC/attr_1', - 'various_modules_package/class_module/ClassModuleClassC/attr_2', + 'tests/data/various_modules_package/class_module/ClassModuleClassC/attr_1', + 'tests/data/various_modules_package/class_module/ClassModuleClassC/attr_2', ]), 'classes': list([ ]), @@ -2024,10 +2147,11 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassC', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassC', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/class_module/ClassModuleClassC/f1', + 'tests/data/various_modules_package/class_module/ClassModuleClassC/f1', ]), 'name': 'ClassModuleClassC', 'reexported_by': list([ @@ -2046,14 +2170,15 @@ 'attributes': list([ ]), 'classes': list([ - 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE', + 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE', ]), 'constructor': None, 'docstring': dict({ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassD', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassD', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ ]), @@ -2077,7 +2202,8 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleEmptyClassA', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleEmptyClassA', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ ]), @@ -2093,21 +2219,22 @@ # name: test_classes[ClassModuleNestedClassE] dict({ 'attributes': list([ - 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/nested_attr_1', - 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_nested_attr_2', + 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/nested_attr_1', + 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_nested_attr_2', ]), 'classes': list([ - 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF', + 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF', ]), 'constructor': None, 'docstring': dict({ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/class_e_func', + 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/class_e_func', ]), 'name': 'ClassModuleNestedClassE', 'reexported_by': list([ @@ -2121,7 +2248,7 @@ # name: test_classes[EpydocDocstringClass] dict({ 'attributes': list([ - 'various_modules_package/docstring_module/EpydocDocstringClass/attr_1', + 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/attr_1', ]), 'classes': list([ ]), @@ -2130,15 +2257,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/docstring_module/EpydocDocstringClass/__init__', + 'id': 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/__init__', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'various_modules_package/docstring_module/EpydocDocstringClass/__init__/self', - 'various_modules_package/docstring_module/EpydocDocstringClass/__init__/param_1', + 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/__init__/self', + 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/__init__/param_1', ]), 'reexported_by': list([ ]), @@ -2156,10 +2283,11 @@ @type param_1: str ''', }), - 'id': 'various_modules_package/docstring_module/EpydocDocstringClass', + 'id': 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func', + 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func', ]), 'name': 'EpydocDocstringClass', 'reexported_by': list([ @@ -2181,13 +2309,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_4/FourthReexportClass', + 'id': 'tests/data/various_modules_package/_reexport_module_4/FourthReexportClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ ]), 'name': 'FourthReexportClass', 'reexported_by': list([ - 'various_modules_package/__init__', + 'tests/data/various_modules_package', ]), 'superclasses': list([ ]), @@ -2198,7 +2327,7 @@ # name: test_classes[GoogleDocstringClass] dict({ 'attributes': list([ - 'various_modules_package/docstring_module/GoogleDocstringClass/attr_1', + 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/attr_1', ]), 'classes': list([ ]), @@ -2207,15 +2336,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass/__init__', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/__init__', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'various_modules_package/docstring_module/GoogleDocstringClass/__init__/self', - 'various_modules_package/docstring_module/GoogleDocstringClass/__init__/param_1', + 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/__init__/self', + 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/__init__/param_1', ]), 'reexported_by': list([ ]), @@ -2240,10 +2369,11 @@ param_1 (str): Parameter of the calculator. (Google Style) ''', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func', + 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func', ]), 'name': 'GoogleDocstringClass', 'reexported_by': list([ @@ -2257,13 +2387,14 @@ # name: test_classes[InferMyTypes] dict({ 'attributes': list([ - 'various_modules_package/infer_types_module/InferMyTypes/infer_int', - 'various_modules_package/infer_types_module/InferMyTypes/infer_float', - 'various_modules_package/infer_types_module/InferMyTypes/infer_bool', - 'various_modules_package/infer_types_module/InferMyTypes/infer_str', - 'various_modules_package/infer_types_module/InferMyTypes/infer_none', - 'various_modules_package/infer_types_module/InferMyTypes/infer_obj', - 'various_modules_package/infer_types_module/InferMyTypes/init_infer', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_int', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_float', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_bool', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_str', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_none', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_call_expr', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/uninferable_callable', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/init_infer', ]), 'classes': list([ ]), @@ -2272,15 +2403,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/__init__', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/__init__', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'various_modules_package/infer_types_module/InferMyTypes/__init__/self', - 'various_modules_package/infer_types_module/InferMyTypes/__init__/init_param', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/__init__/self', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/__init__/init_param', ]), 'reexported_by': list([ ]), @@ -2291,15 +2422,16 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/infer_types_module/InferMyTypes/infer_param_types', - 'various_modules_package/infer_types_module/InferMyTypes/infer_function', - 'various_modules_package/infer_types_module/InferMyTypes/infer_function_2', - 'various_modules_package/infer_types_module/InferMyTypes/infer_call_result_1', - 'various_modules_package/infer_types_module/InferMyTypes/_', - 'various_modules_package/infer_types_module/InferMyTypes/infer_call_result_2', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_param_types', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function_2', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_call_result_1', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/_', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_call_result_2', ]), 'name': 'InferMyTypes', 'reexported_by': list([ @@ -2313,7 +2445,7 @@ # name: test_classes[NumpyDocstringClass] dict({ 'attributes': list([ - 'various_modules_package/docstring_module/NumpyDocstringClass/attr_1', + 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/attr_1', ]), 'classes': list([ ]), @@ -2322,15 +2454,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass/__init__', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/__init__', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'various_modules_package/docstring_module/NumpyDocstringClass/__init__/self', - 'various_modules_package/docstring_module/NumpyDocstringClass/__init__/param_1', + 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/__init__/self', + 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/__init__/param_1', ]), 'reexported_by': list([ ]), @@ -2359,10 +2491,11 @@ Parameter of the calculator. (Numpy) ''', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func', + 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func', ]), 'name': 'NumpyDocstringClass', 'reexported_by': list([ @@ -2384,14 +2517,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_1/ReexportClass', + 'id': 'tests/data/various_modules_package/_reexport_module_1/ReexportClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/_reexport_module_1/ReexportClass/_private_class_method_of_reexported_class', + 'tests/data/various_modules_package/_reexport_module_1/ReexportClass/_private_class_method_of_reexported_class', ]), 'name': 'ReexportClass', 'reexported_by': list([ - 'various_modules_package/__init__', + 'tests/data/various_modules_package', ]), 'superclasses': list([ ]), @@ -2402,7 +2536,7 @@ # name: test_classes[RestDocstringClass] dict({ 'attributes': list([ - 'various_modules_package/docstring_module/RestDocstringClass/attr_1', + 'tests/data/various_modules_package/docstring_module/RestDocstringClass/attr_1', ]), 'classes': list([ ]), @@ -2411,15 +2545,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass/__init__', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass/__init__', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': '__init__', 'parameters': list([ - 'various_modules_package/docstring_module/RestDocstringClass/__init__/self', - 'various_modules_package/docstring_module/RestDocstringClass/__init__/param_1', + 'tests/data/various_modules_package/docstring_module/RestDocstringClass/__init__/self', + 'tests/data/various_modules_package/docstring_module/RestDocstringClass/__init__/param_1', ]), 'reexported_by': list([ ]), @@ -2437,10 +2571,11 @@ :type param_1: str ''', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ - 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func', + 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func', ]), 'name': 'RestDocstringClass', 'reexported_by': list([ @@ -2462,7 +2597,8 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/variance_module/VarianceClassAll', + 'id': 'tests/data/various_modules_package/variance_module/VarianceClassAll', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ ]), @@ -2535,7 +2671,8 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/variance_module/VarianceClassOnlyContravarianceNoBound', + 'id': 'tests/data/various_modules_package/variance_module/VarianceClassOnlyContravarianceNoBound', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ ]), @@ -2564,7 +2701,8 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/variance_module/VarianceClassOnlyCovarianceNoBound', + 'id': 'tests/data/various_modules_package/variance_module/VarianceClassOnlyCovarianceNoBound', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ ]), @@ -2593,7 +2731,8 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/variance_module/VarianceClassOnlyVarianceNoBound', + 'id': 'tests/data/various_modules_package/variance_module/VarianceClassOnlyVarianceNoBound', + 'inherits_from_exception': False, 'is_public': True, 'methods': list([ ]), @@ -2614,8 +2753,8 @@ # name: test_classes[_ClassModulePrivateClassG] dict({ 'attributes': list([ - 'various_modules_package/class_module/_ClassModulePrivateClassG/_attr_1', - 'various_modules_package/class_module/_ClassModulePrivateClassG/_attr_2', + 'tests/data/various_modules_package/class_module/_ClassModulePrivateClassG/_attr_1', + 'tests/data/various_modules_package/class_module/_ClassModulePrivateClassG/_attr_2', ]), 'classes': list([ ]), @@ -2624,7 +2763,8 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/_ClassModulePrivateClassG', + 'id': 'tests/data/various_modules_package/class_module/_ClassModulePrivateClassG', + 'inherits_from_exception': False, 'is_public': False, 'methods': list([ ]), @@ -2648,10 +2788,11 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF', + 'id': 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF', + 'inherits_from_exception': False, 'is_public': False, 'methods': list([ - 'various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF/_class_f_func', + 'tests/data/various_modules_package/class_module/ClassModuleClassD/ClassModuleNestedClassE/_ClassModulePrivateDoubleNestedClassF/_class_f_func', ]), 'name': '_ClassModulePrivateDoubleNestedClassF', 'reexported_by': list([ @@ -2673,13 +2814,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_3/_ThirdReexportClass', + 'id': 'tests/data/various_modules_package/_reexport_module_3/_ThirdReexportClass', + 'inherits_from_exception': False, 'is_public': False, 'methods': list([ ]), 'name': '_ThirdReexportClass', 'reexported_by': list([ - 'various_modules_package/__init__', + 'tests/data/various_modules_package', ]), 'superclasses': list([ ]), @@ -2690,7 +2832,7 @@ # name: test_enum_instances[EnumTest3] list([ dict({ - 'id': 'various_modules_package/enum_module/EnumTest3/ele_ven', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest3/ele_ven', 'name': 'ele_ven', }), ]) @@ -2698,39 +2840,39 @@ # name: test_enum_instances[EnumTest] list([ dict({ - 'id': 'various_modules_package/enum_module/EnumTest/EIGHT', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest/EIGHT', 'name': 'EIGHT', }), dict({ - 'id': 'various_modules_package/enum_module/EnumTest/FIVE', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest/FIVE', 'name': 'FIVE', }), dict({ - 'id': 'various_modules_package/enum_module/EnumTest/FOUR', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest/FOUR', 'name': 'FOUR', }), dict({ - 'id': 'various_modules_package/enum_module/EnumTest/NINE', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest/NINE', 'name': 'NINE', }), dict({ - 'id': 'various_modules_package/enum_module/EnumTest/ONE', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest/ONE', 'name': 'ONE', }), dict({ - 'id': 'various_modules_package/enum_module/EnumTest/SEVEN', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest/SEVEN', 'name': 'SEVEN', }), dict({ - 'id': 'various_modules_package/enum_module/EnumTest/SIX', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest/SIX', 'name': 'SIX', }), dict({ - 'id': 'various_modules_package/enum_module/EnumTest/THREE', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest/THREE', 'name': 'THREE', }), dict({ - 'id': 'various_modules_package/enum_module/EnumTest/TWO', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest/TWO', 'name': 'TWO', }), ]) @@ -2745,9 +2887,9 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/enum_module/EnumTest2', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest2', 'instances': list([ - 'various_modules_package/enum_module/EnumTest2/TEN', + 'tests/data/various_modules_package/enum_module/EnumTest2/TEN', ]), 'name': 'EnumTest2', }) @@ -2758,9 +2900,9 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/enum_module/EnumTest3', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest3', 'instances': list([ - 'various_modules_package/enum_module/EnumTest3/ele_ven', + 'tests/data/various_modules_package/enum_module/EnumTest3/ele_ven', ]), 'name': 'EnumTest3', }) @@ -2779,17 +2921,17 @@ Full Docstring Description ''', }), - 'id': 'various_modules_package/enum_module/EnumTest', + 'id': 'tests/data/various_modules_package/enum_module/EnumTest', 'instances': list([ - 'various_modules_package/enum_module/EnumTest/ONE', - 'various_modules_package/enum_module/EnumTest/TWO', - 'various_modules_package/enum_module/EnumTest/THREE', - 'various_modules_package/enum_module/EnumTest/FOUR', - 'various_modules_package/enum_module/EnumTest/FIVE', - 'various_modules_package/enum_module/EnumTest/SIX', - 'various_modules_package/enum_module/EnumTest/SEVEN', - 'various_modules_package/enum_module/EnumTest/EIGHT', - 'various_modules_package/enum_module/EnumTest/NINE', + 'tests/data/various_modules_package/enum_module/EnumTest/ONE', + 'tests/data/various_modules_package/enum_module/EnumTest/TWO', + 'tests/data/various_modules_package/enum_module/EnumTest/THREE', + 'tests/data/various_modules_package/enum_module/EnumTest/FOUR', + 'tests/data/various_modules_package/enum_module/EnumTest/FIVE', + 'tests/data/various_modules_package/enum_module/EnumTest/SIX', + 'tests/data/various_modules_package/enum_module/EnumTest/SEVEN', + 'tests/data/various_modules_package/enum_module/EnumTest/EIGHT', + 'tests/data/various_modules_package/enum_module/EnumTest/NINE', ]), 'name': 'EnumTest', }) @@ -2800,7 +2942,7 @@ 'description': "Nothing's here.", 'full_docstring': "Nothing's here.", }), - 'id': 'various_modules_package/enum_module/_ReexportedEmptyEnum', + 'id': 'tests/data/various_modules_package/enum_module/_ReexportedEmptyEnum', 'instances': list([ ]), 'name': '_ReexportedEmptyEnum', @@ -2816,7 +2958,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/__init__/init_param', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/__init__/init_param', 'is_optional': False, 'name': 'init_param', 'type': None, @@ -2829,7 +2971,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/__init__/self', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/__init__/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -2846,7 +2988,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/_private/a', + 'id': 'tests/data/various_modules_package/function_module/_private/a', 'is_optional': False, 'name': 'a', 'type': None, @@ -2863,7 +3005,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_1', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_1', 'is_optional': False, 'name': 'param_1', 'type': dict({ @@ -2880,7 +3022,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_2', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_2', 'is_optional': True, 'name': 'param_2', 'type': dict({ @@ -2897,7 +3039,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_3', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/param_3', 'is_optional': True, 'name': 'param_3', 'type': dict({ @@ -2914,7 +3056,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/self', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -2931,7 +3073,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/self', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -2948,7 +3090,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params/param', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params/param', 'is_optional': False, 'name': 'param', 'type': dict({ @@ -2969,7 +3111,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/arg/args', + 'id': 'tests/data/various_modules_package/function_module/arg/args', 'is_optional': False, 'name': 'args', 'type': None, @@ -2982,7 +3124,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/arg/kwargs', + 'id': 'tests/data/various_modules_package/function_module/arg/kwargs', 'is_optional': False, 'name': 'kwargs', 'type': None, @@ -2999,7 +3141,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/args_type/args', + 'id': 'tests/data/various_modules_package/function_module/args_type/args', 'is_optional': False, 'name': 'args', 'type': dict({ @@ -3021,7 +3163,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/args_type/kwargs', + 'id': 'tests/data/various_modules_package/function_module/args_type/kwargs', 'is_optional': False, 'name': 'kwargs', 'type': dict({ @@ -3050,7 +3192,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/callable_type/param', + 'id': 'tests/data/various_modules_package/function_module/callable_type/param', 'is_optional': False, 'name': 'param', 'type': dict({ @@ -3091,7 +3233,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/class_method/cls', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method/cls', 'is_optional': False, 'name': 'cls', 'type': None, @@ -3108,7 +3250,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/class_method_params/cls', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method_params/cls', 'is_optional': False, 'name': 'cls', 'type': None, @@ -3121,7 +3263,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/class_method_params/param_1', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method_params/param_1', 'is_optional': False, 'name': 'param_1', 'type': dict({ @@ -3142,7 +3284,7 @@ 'description': 'Parameter of the calculator. (Epydoc)', 'type': 'str', }), - 'id': 'various_modules_package/docstring_module/EpydocDocstringClass/__init__/param_1', + 'id': 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/__init__/param_1', 'is_optional': False, 'name': 'param_1', 'type': dict({ @@ -3159,7 +3301,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/docstring_module/EpydocDocstringClass/__init__/self', + 'id': 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/__init__/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -3176,7 +3318,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/self', + 'id': 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -3189,7 +3331,7 @@ 'description': 'First integer value for the calculation. (Epydoc)', 'type': 'int', }), - 'id': 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/x', + 'id': 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/x', 'is_optional': False, 'name': 'x', 'type': dict({ @@ -3206,7 +3348,7 @@ 'description': 'Second integer value for the calculation. (Epydoc)', 'type': 'int', }), - 'id': 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/y', + 'id': 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/y', 'is_optional': False, 'name': 'y', 'type': dict({ @@ -3227,7 +3369,7 @@ 'description': 'Parameter of the calculator. (Google Style)', 'type': 'str', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass/__init__/param_1', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/__init__/param_1', 'is_optional': False, 'name': 'param_1', 'type': dict({ @@ -3244,7 +3386,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass/__init__/self', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/__init__/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -3261,7 +3403,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/self', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -3274,7 +3416,7 @@ 'description': 'First integer value for the calculation. (Google Style)', 'type': 'int', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/x', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/x', 'is_optional': False, 'name': 'x', 'type': dict({ @@ -3291,7 +3433,7 @@ 'description': 'Second integer value for the calculation. (Google Style)', 'type': 'int', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/y', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/y', 'is_optional': False, 'name': 'y', 'type': dict({ @@ -3312,7 +3454,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/illegal_params/_', + 'id': 'tests/data/various_modules_package/function_module/illegal_params/_', 'is_optional': True, 'name': '_', 'type': dict({ @@ -3329,7 +3471,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/illegal_params/dct', + 'id': 'tests/data/various_modules_package/function_module/illegal_params/dct', 'is_optional': False, 'name': 'dct', 'type': dict({ @@ -3354,7 +3496,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/illegal_params/lst', + 'id': 'tests/data/various_modules_package/function_module/illegal_params/lst', 'is_optional': False, 'name': 'lst', 'type': dict({ @@ -3381,7 +3523,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/illegal_params/lst_2', + 'id': 'tests/data/various_modules_package/function_module/illegal_params/lst_2', 'is_optional': False, 'name': 'lst_2', 'type': dict({ @@ -3413,7 +3555,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/illegal_params/tpl', + 'id': 'tests/data/various_modules_package/function_module/illegal_params/tpl', 'is_optional': False, 'name': 'tpl', 'type': dict({ @@ -3454,7 +3596,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/type_var_module/multiple_type_var/a', + 'id': 'tests/data/various_modules_package/type_var_module/multiple_type_var/a', 'is_optional': False, 'name': 'a', 'type': dict({ @@ -3471,7 +3613,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/type_var_module/multiple_type_var/b', + 'id': 'tests/data/various_modules_package/type_var_module/multiple_type_var/b', 'is_optional': False, 'name': 'b', 'type': dict({ @@ -3492,7 +3634,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/param1', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/param1', 'is_optional': False, 'name': 'param1', 'type': dict({ @@ -3509,7 +3651,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/self', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -3526,7 +3668,7 @@ 'description': 'Parameter of the calculator. (Numpy)', 'type': 'str', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass/__init__/param_1', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/__init__/param_1', 'is_optional': False, 'name': 'param_1', 'type': dict({ @@ -3543,7 +3685,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass/__init__/self', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/__init__/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -3560,7 +3702,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/self', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -3573,7 +3715,7 @@ 'description': 'First integer value for the calculation. (Numpy)', 'type': 'int', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/x', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/x', 'is_optional': False, 'name': 'x', 'type': dict({ @@ -3590,7 +3732,7 @@ 'description': 'Second integer value for the calculation. (Numpy)', 'type': 'int', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/y', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/y', 'is_optional': False, 'name': 'y', 'type': dict({ @@ -3611,7 +3753,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/opt_pos_only/optional', + 'id': 'tests/data/various_modules_package/function_module/opt_pos_only/optional', 'is_optional': True, 'name': 'optional', 'type': dict({ @@ -3628,7 +3770,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/opt_pos_only/required', + 'id': 'tests/data/various_modules_package/function_module/opt_pos_only/required', 'is_optional': False, 'name': 'required', 'type': None, @@ -3645,7 +3787,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/param_from_outside_the_package/param_type', + 'id': 'tests/data/various_modules_package/function_module/param_from_outside_the_package/param_type', 'is_optional': False, 'name': 'param_type', 'type': dict({ @@ -3662,7 +3804,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/param_from_outside_the_package/param_value', + 'id': 'tests/data/various_modules_package/function_module/param_from_outside_the_package/param_value', 'is_optional': False, 'name': 'param_value', 'type': None, @@ -3679,7 +3821,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/param_position/a', + 'id': 'tests/data/various_modules_package/function_module/param_position/a', 'is_optional': False, 'name': 'a', 'type': None, @@ -3692,7 +3834,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/param_position/b', + 'id': 'tests/data/various_modules_package/function_module/param_position/b', 'is_optional': False, 'name': 'b', 'type': dict({ @@ -3709,7 +3851,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/param_position/c', + 'id': 'tests/data/various_modules_package/function_module/param_position/c', 'is_optional': False, 'name': 'c', 'type': None, @@ -3722,7 +3864,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/param_position/d', + 'id': 'tests/data/various_modules_package/function_module/param_position/d', 'is_optional': False, 'name': 'd', 'type': None, @@ -3735,7 +3877,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/param_position/e', + 'id': 'tests/data/various_modules_package/function_module/param_position/e', 'is_optional': True, 'name': 'e', 'type': dict({ @@ -3752,7 +3894,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/param_position/self', + 'id': 'tests/data/various_modules_package/function_module/param_position/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -3769,7 +3911,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/any_', + 'id': 'tests/data/various_modules_package/function_module/params/any_', 'is_optional': False, 'name': 'any_', 'type': dict({ @@ -3786,7 +3928,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/boolean', + 'id': 'tests/data/various_modules_package/function_module/params/boolean', 'is_optional': False, 'name': 'boolean', 'type': dict({ @@ -3803,7 +3945,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/callexpr', + 'id': 'tests/data/various_modules_package/function_module/params/callexpr', 'is_optional': False, 'name': 'callexpr', 'type': None, @@ -3816,7 +3958,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/dictionary', + 'id': 'tests/data/various_modules_package/function_module/params/dictionary', 'is_optional': False, 'name': 'dictionary', 'type': dict({ @@ -3851,7 +3993,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/float_', + 'id': 'tests/data/various_modules_package/function_module/params/float_', 'is_optional': False, 'name': 'float_', 'type': dict({ @@ -3868,7 +4010,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/integer', + 'id': 'tests/data/various_modules_package/function_module/params/integer', 'is_optional': False, 'name': 'integer', 'type': dict({ @@ -3885,7 +4027,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/list_', + 'id': 'tests/data/various_modules_package/function_module/params/list_', 'is_optional': False, 'name': 'list_', 'type': dict({ @@ -3907,7 +4049,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/literal', + 'id': 'tests/data/various_modules_package/function_module/params/literal', 'is_optional': False, 'name': 'literal', 'type': dict({ @@ -3925,7 +4067,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/none', + 'id': 'tests/data/various_modules_package/function_module/params/none', 'is_optional': False, 'name': 'none', 'type': dict({ @@ -3942,7 +4084,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/obj', + 'id': 'tests/data/various_modules_package/function_module/params/obj', 'is_optional': False, 'name': 'obj', 'type': dict({ @@ -3959,7 +4101,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/optional', + 'id': 'tests/data/various_modules_package/function_module/params/optional', 'is_optional': False, 'name': 'optional', 'type': dict({ @@ -3986,7 +4128,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/set_', + 'id': 'tests/data/various_modules_package/function_module/params/set_', 'is_optional': False, 'name': 'set_', 'type': dict({ @@ -4008,7 +4150,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/string', + 'id': 'tests/data/various_modules_package/function_module/params/string', 'is_optional': False, 'name': 'string', 'type': dict({ @@ -4025,7 +4167,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/tuple_', + 'id': 'tests/data/various_modules_package/function_module/params/tuple_', 'is_optional': False, 'name': 'tuple_', 'type': dict({ @@ -4057,7 +4199,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/union', + 'id': 'tests/data/various_modules_package/function_module/params/union', 'is_optional': False, 'name': 'union', 'type': dict({ @@ -4084,7 +4226,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/union_with_none_1', + 'id': 'tests/data/various_modules_package/function_module/params/union_with_none_1', 'is_optional': False, 'name': 'union_with_none_1', 'type': dict({ @@ -4111,7 +4253,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/params/union_with_none_2', + 'id': 'tests/data/various_modules_package/function_module/params/union_with_none_2', 'is_optional': False, 'name': 'union_with_none_2', 'type': dict({ @@ -4146,7 +4288,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/req_name_only/optional', + 'id': 'tests/data/various_modules_package/function_module/req_name_only/optional', 'is_optional': True, 'name': 'optional', 'type': dict({ @@ -4163,7 +4305,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/req_name_only/required', + 'id': 'tests/data/various_modules_package/function_module/req_name_only/required', 'is_optional': False, 'name': 'required', 'type': None, @@ -4180,7 +4322,7 @@ 'description': 'Parameter of the calculator. (ReST)', 'type': 'str', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass/__init__/param_1', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass/__init__/param_1', 'is_optional': False, 'name': 'param_1', 'type': dict({ @@ -4197,7 +4339,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass/__init__/self', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass/__init__/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -4214,7 +4356,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/self', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/self', 'is_optional': False, 'name': 'self', 'type': None, @@ -4227,7 +4369,7 @@ 'description': 'First integer value for the calculation. (ReST)', 'type': 'int', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/x', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/x', 'is_optional': False, 'name': 'x', 'type': dict({ @@ -4244,7 +4386,7 @@ 'description': 'Second integer value for the calculation. (ReST)', 'type': 'int', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/y', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/y', 'is_optional': False, 'name': 'y', 'type': dict({ @@ -4265,7 +4407,34 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/special_params/bool_none_union', + 'id': 'tests/data/various_modules_package/function_module/special_params/bool_none_str', + 'is_optional': False, + 'name': 'bool_none_str', + 'type': dict({ + 'kind': 'UnionType', + 'types': list([ + dict({ + 'kind': 'NamedType', + 'name': 'None', + 'qname': 'builtins.None', + }), + dict({ + 'kind': 'NamedType', + 'name': 'str', + 'qname': 'builtins.str', + }), + ]), + }), + }), + dict({ + 'assigned_by': 'POSITION_OR_NAME', + 'default_value': None, + 'docstring': dict({ + 'default_value': '', + 'description': '', + 'type': '', + }), + 'id': 'tests/data/various_modules_package/function_module/special_params/bool_none_union', 'is_optional': False, 'name': 'bool_none_union', 'type': dict({ @@ -4292,7 +4461,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/special_params/none', + 'id': 'tests/data/various_modules_package/function_module/special_params/none', 'is_optional': False, 'name': 'none', 'type': dict({ @@ -4309,7 +4478,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/special_params/none_bool_int_union', + 'id': 'tests/data/various_modules_package/function_module/special_params/none_bool_int_union', 'is_optional': False, 'name': 'none_bool_int_union', 'type': dict({ @@ -4341,7 +4510,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/special_params/none_bool_none_union', + 'id': 'tests/data/various_modules_package/function_module/special_params/none_bool_none_union', 'is_optional': False, 'name': 'none_bool_none_union', 'type': dict({ @@ -4373,7 +4542,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/special_params/none_bool_union', + 'id': 'tests/data/various_modules_package/function_module/special_params/none_bool_union', 'is_optional': False, 'name': 'none_bool_union', 'type': dict({ @@ -4400,7 +4569,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/special_params/none_list_union_none_none', + 'id': 'tests/data/various_modules_package/function_module/special_params/none_list_union_none_none', 'is_optional': False, 'name': 'none_list_union_none_none', 'type': dict({ @@ -4447,7 +4616,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/special_params/none_none_bool_none_union', + 'id': 'tests/data/various_modules_package/function_module/special_params/none_none_bool_none_union', 'is_optional': False, 'name': 'none_none_bool_none_union', 'type': dict({ @@ -4484,7 +4653,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/special_params/none_union', + 'id': 'tests/data/various_modules_package/function_module/special_params/none_union', 'is_optional': False, 'name': 'none_union', 'type': dict({ @@ -4515,7 +4684,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/static_method_params/param_1', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/static_method_params/param_1', 'is_optional': False, 'name': 'param_1', 'type': dict({ @@ -4536,7 +4705,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/type_var_module/type_var_func/a', + 'id': 'tests/data/various_modules_package/type_var_module/type_var_func/a', 'is_optional': False, 'name': 'a', 'type': dict({ @@ -4559,7 +4728,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/result_1', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_method_params/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'ListType', @@ -4586,7 +4755,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/result_1', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -4599,7 +4768,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/result_2', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_property_method/result_2', 'name': 'result_2', 'type': dict({ 'kind': 'NamedType', @@ -4616,7 +4785,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params/result_1', + 'id': 'tests/data/various_modules_package/abstract_module/AbstractModuleClass/abstract_static_method_params/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -4633,7 +4802,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/any_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/any_results/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -4650,7 +4819,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/callable_type/result_1', + 'id': 'tests/data/various_modules_package/function_module/callable_type/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'CallableType', @@ -4690,7 +4859,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/class_method_params/result_1', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/class_method_params/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -4707,7 +4876,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/dictionary_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/dictionary_results/result_1', 'name': 'result_1', 'type': dict({ 'key_type': dict({ @@ -4732,7 +4901,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/dictionary_results_no_key_no_value/result_1', + 'id': 'tests/data/various_modules_package/function_module/dictionary_results_no_key_no_value/result_1', 'name': 'result_1', 'type': dict({ 'key_type': dict({ @@ -4757,7 +4926,7 @@ 'description': 'Checks if the sum of x and y is greater than 10. (Epydoc)', 'type': 'bool', }), - 'id': 'various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/result_1', + 'id': 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass/epydoc_docstring_func/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -4774,7 +4943,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/float_result/result_1', + 'id': 'tests/data/various_modules_package/function_module/float_result/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -4794,7 +4963,7 @@ ''', 'type': 'bool', }), - 'id': 'various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/result_1', + 'id': 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass/google_docstring_func/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -4811,7 +4980,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/illegal_dictionary_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/illegal_dictionary_results/result_1', 'name': 'result_1', 'type': dict({ 'key_type': dict({ @@ -4836,7 +5005,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/illegal_list_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/illegal_list_results/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'ListType', @@ -4863,7 +5032,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/illegal_set_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/illegal_set_results/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'SetType', @@ -4890,7 +5059,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/infer_function/result_1', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'UnionType', @@ -4953,7 +5122,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/infer_function/result_2', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function/result_2', 'name': 'result_2', 'type': dict({ 'kind': 'UnionType', @@ -4976,7 +5145,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/infer_types_module/InferMyTypes/infer_function/result_3', + 'id': 'tests/data/various_modules_package/infer_types_module/InferMyTypes/infer_function/result_3', 'name': 'result_3', 'type': dict({ 'kind': 'NamedType', @@ -4993,7 +5162,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/instance_method/result_1', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/instance_method/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5010,7 +5179,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/int_result/result_1', + 'id': 'tests/data/various_modules_package/function_module/int_result/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5027,7 +5196,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/list_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/list_results/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'ListType', @@ -5049,7 +5218,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/literal_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/literal_results/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'LiteralType', @@ -5067,7 +5236,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/type_var_module/multiple_type_var/result_1', + 'id': 'tests/data/various_modules_package/type_var_module/multiple_type_var/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'ListType', @@ -5099,7 +5268,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/result_1', + 'id': 'tests/data/various_modules_package/function_module/FunctionModuleClassB/FunctionModuleClassC/nested_class_function/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5120,7 +5289,7 @@ 'description': 'Checks if the sum of `x` and `y` is greater than 10. (Numpy)', 'type': 'bool', }), - 'id': 'various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/result_1', + 'id': 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass/numpy_docstring_func/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5137,7 +5306,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/obj_result/result_1', + 'id': 'tests/data/various_modules_package/function_module/obj_result/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5154,7 +5323,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/optional_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/optional_results/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'UnionType', @@ -5185,7 +5354,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function_infer/result_1', + 'id': 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function_infer/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5202,7 +5371,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/FunctionModulePropertiesClass/property_function_params/result_1', + 'id': 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass/property_function_params/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5219,7 +5388,7 @@ 'description': 'Checks if the sum of x and y is greater than 10. (ReST)', 'type': 'bool', }), - 'id': 'various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/result_1', + 'id': 'tests/data/various_modules_package/docstring_module/RestDocstringClass/rest_docstring_func/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5236,7 +5405,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/result_from_outside_the_package/result_1', + 'id': 'tests/data/various_modules_package/function_module/result_from_outside_the_package/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5253,7 +5422,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/set_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/set_results/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'SetType', @@ -5279,7 +5448,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/str_result/result_1', + 'id': 'tests/data/various_modules_package/function_module/str_result/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5296,7 +5465,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/tuple_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/tuple_results/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'NamedType', @@ -5309,7 +5478,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/tuple_results/result_2', + 'id': 'tests/data/various_modules_package/function_module/tuple_results/result_2', 'name': 'result_2', 'type': dict({ 'kind': 'NamedType', @@ -5326,7 +5495,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/type_var_module/type_var_func/result_1', + 'id': 'tests/data/various_modules_package/type_var_module/type_var_func/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'ListType', @@ -5348,7 +5517,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/union_dictionary_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/union_dictionary_results/result_1', 'name': 'result_1', 'type': dict({ 'key_type': dict({ @@ -5393,7 +5562,7 @@ 'description': '', 'type': '', }), - 'id': 'various_modules_package/function_module/union_results/result_1', + 'id': 'tests/data/various_modules_package/function_module/union_results/result_1', 'name': 'result_1', 'type': dict({ 'kind': 'UnionType', @@ -5420,15 +5589,16 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_1/reexported_function', + 'id': 'tests/data/various_modules_package/_reexport_module_1/reexported_function', 'is_class_method': False, 'is_property': False, - 'is_public': False, + 'is_public': True, 'is_static': False, 'name': 'reexported_function', 'parameters': list([ ]), 'reexported_by': list([ + 'tests/data/various_modules_package', ]), 'results': list([ ]), @@ -5442,7 +5612,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_2/reexported_function_2', + 'id': 'tests/data/various_modules_package/_reexport_module_2/reexported_function_2', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5451,7 +5621,7 @@ 'parameters': list([ ]), 'reexported_by': list([ - 'various_modules_package/__init__', + 'tests/data/various_modules_package', ]), 'results': list([ ]), @@ -5465,16 +5635,16 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_3/reexported_function_3', + 'id': 'tests/data/various_modules_package/_reexport_module_3/reexported_function_3', 'is_class_method': False, 'is_property': False, - 'is_public': False, + 'is_public': True, 'is_static': False, 'name': 'reexported_function_3', 'parameters': list([ ]), 'reexported_by': list([ - 'various_modules_package/__init__', + 'tests/data/various_modules_package', ]), 'results': list([ ]), @@ -5488,7 +5658,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_4/_reexported_function_4', + 'id': 'tests/data/various_modules_package/_reexport_module_4/_reexported_function_4', 'is_class_method': False, 'is_property': False, 'is_public': False, @@ -5497,7 +5667,45 @@ 'parameters': list([ ]), 'reexported_by': list([ - 'various_modules_package/__init__', + 'tests/data/various_modules_package', + ]), + 'results': list([ + ]), + }), + dict({ + 'docstring': dict({ + 'description': '', + 'full_docstring': '', + }), + 'id': 'tests/data/various_modules_package/_reexport_module_4/_reexported_function_4_alias', + 'is_class_method': False, + 'is_property': False, + 'is_public': True, + 'is_static': False, + 'name': '_reexported_function_4_alias', + 'parameters': list([ + ]), + 'reexported_by': list([ + 'tests/data/various_modules_package', + ]), + 'results': list([ + ]), + }), + dict({ + 'docstring': dict({ + 'description': '', + 'full_docstring': '', + }), + 'id': 'tests/data/various_modules_package/_reexport_module_4/_two_times_reexported', + 'is_class_method': False, + 'is_property': False, + 'is_public': True, + 'is_static': False, + 'name': '_two_times_reexported', + 'parameters': list([ + ]), + 'reexported_by': list([ + 'tests/data/various_modules_package', ]), 'results': list([ ]), @@ -5507,7 +5715,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/_reexport_module_4/_unreexported_function', + 'id': 'tests/data/various_modules_package/_reexport_module_4/_unreexported_function', 'is_class_method': False, 'is_property': False, 'is_public': False, @@ -5529,14 +5737,14 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/_private', + 'id': 'tests/data/various_modules_package/function_module/_private', 'is_class_method': False, 'is_property': False, 'is_public': False, 'is_static': False, 'name': '_private', 'parameters': list([ - 'various_modules_package/function_module/_private/a', + 'tests/data/various_modules_package/function_module/_private/a', ]), 'reexported_by': list([ ]), @@ -5548,7 +5756,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/any_results', + 'id': 'tests/data/various_modules_package/function_module/any_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5559,7 +5767,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/any_results/result_1', + 'tests/data/various_modules_package/function_module/any_results/result_1', ]), }), dict({ @@ -5567,15 +5775,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/arg', + 'id': 'tests/data/various_modules_package/function_module/arg', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'arg', 'parameters': list([ - 'various_modules_package/function_module/arg/args', - 'various_modules_package/function_module/arg/kwargs', + 'tests/data/various_modules_package/function_module/arg/args', + 'tests/data/various_modules_package/function_module/arg/kwargs', ]), 'reexported_by': list([ ]), @@ -5587,15 +5795,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/args_type', + 'id': 'tests/data/various_modules_package/function_module/args_type', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'args_type', 'parameters': list([ - 'various_modules_package/function_module/args_type/args', - 'various_modules_package/function_module/args_type/kwargs', + 'tests/data/various_modules_package/function_module/args_type/args', + 'tests/data/various_modules_package/function_module/args_type/kwargs', ]), 'reexported_by': list([ ]), @@ -5607,7 +5815,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/bool_result', + 'id': 'tests/data/various_modules_package/function_module/bool_result', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5618,7 +5826,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/bool_result/result_1', + 'tests/data/various_modules_package/function_module/bool_result/result_1', ]), }), dict({ @@ -5626,19 +5834,19 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/callable_type', + 'id': 'tests/data/various_modules_package/function_module/callable_type', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'callable_type', 'parameters': list([ - 'various_modules_package/function_module/callable_type/param', + 'tests/data/various_modules_package/function_module/callable_type/param', ]), 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/callable_type/result_1', + 'tests/data/various_modules_package/function_module/callable_type/result_1', ]), }), dict({ @@ -5646,7 +5854,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/callexr_result_class', + 'id': 'tests/data/various_modules_package/function_module/callexr_result_class', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5664,7 +5872,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/callexr_result_function', + 'id': 'tests/data/various_modules_package/function_module/callexr_result_function', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5682,7 +5890,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/dictionary_results', + 'id': 'tests/data/various_modules_package/function_module/dictionary_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5693,7 +5901,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/dictionary_results/result_1', + 'tests/data/various_modules_package/function_module/dictionary_results/result_1', ]), }), dict({ @@ -5701,7 +5909,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/dictionary_results_no_key_no_value', + 'id': 'tests/data/various_modules_package/function_module/dictionary_results_no_key_no_value', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5712,7 +5920,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/dictionary_results_no_key_no_value/result_1', + 'tests/data/various_modules_package/function_module/dictionary_results_no_key_no_value/result_1', ]), }), dict({ @@ -5720,7 +5928,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/float_result', + 'id': 'tests/data/various_modules_package/function_module/float_result', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5731,7 +5939,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/float_result/result_1', + 'tests/data/various_modules_package/function_module/float_result/result_1', ]), }), dict({ @@ -5739,7 +5947,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/illegal_dictionary_results', + 'id': 'tests/data/various_modules_package/function_module/illegal_dictionary_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5750,7 +5958,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/illegal_dictionary_results/result_1', + 'tests/data/various_modules_package/function_module/illegal_dictionary_results/result_1', ]), }), dict({ @@ -5758,7 +5966,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/illegal_list_results', + 'id': 'tests/data/various_modules_package/function_module/illegal_list_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5769,7 +5977,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/illegal_list_results/result_1', + 'tests/data/various_modules_package/function_module/illegal_list_results/result_1', ]), }), dict({ @@ -5777,18 +5985,18 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/illegal_params', + 'id': 'tests/data/various_modules_package/function_module/illegal_params', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'illegal_params', 'parameters': list([ - 'various_modules_package/function_module/illegal_params/lst', - 'various_modules_package/function_module/illegal_params/lst_2', - 'various_modules_package/function_module/illegal_params/tpl', - 'various_modules_package/function_module/illegal_params/dct', - 'various_modules_package/function_module/illegal_params/_', + 'tests/data/various_modules_package/function_module/illegal_params/lst', + 'tests/data/various_modules_package/function_module/illegal_params/lst_2', + 'tests/data/various_modules_package/function_module/illegal_params/tpl', + 'tests/data/various_modules_package/function_module/illegal_params/dct', + 'tests/data/various_modules_package/function_module/illegal_params/_', ]), 'reexported_by': list([ ]), @@ -5800,7 +6008,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/illegal_set_results', + 'id': 'tests/data/various_modules_package/function_module/illegal_set_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5811,7 +6019,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/illegal_set_results/result_1', + 'tests/data/various_modules_package/function_module/illegal_set_results/result_1', ]), }), dict({ @@ -5819,7 +6027,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/int_result', + 'id': 'tests/data/various_modules_package/function_module/int_result', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5830,7 +6038,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/int_result/result_1', + 'tests/data/various_modules_package/function_module/int_result/result_1', ]), }), dict({ @@ -5838,7 +6046,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/list_results', + 'id': 'tests/data/various_modules_package/function_module/list_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5849,7 +6057,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/list_results/result_1', + 'tests/data/various_modules_package/function_module/list_results/result_1', ]), }), dict({ @@ -5857,7 +6065,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/literal_results', + 'id': 'tests/data/various_modules_package/function_module/literal_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5868,7 +6076,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/literal_results/result_1', + 'tests/data/various_modules_package/function_module/literal_results/result_1', ]), }), dict({ @@ -5876,7 +6084,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/none_result', + 'id': 'tests/data/various_modules_package/function_module/none_result', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5894,7 +6102,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/obj_result', + 'id': 'tests/data/various_modules_package/function_module/obj_result', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5905,7 +6113,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/obj_result/result_1', + 'tests/data/various_modules_package/function_module/obj_result/result_1', ]), }), dict({ @@ -5913,15 +6121,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/opt_pos_only', + 'id': 'tests/data/various_modules_package/function_module/opt_pos_only', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'opt_pos_only', 'parameters': list([ - 'various_modules_package/function_module/opt_pos_only/required', - 'various_modules_package/function_module/opt_pos_only/optional', + 'tests/data/various_modules_package/function_module/opt_pos_only/required', + 'tests/data/various_modules_package/function_module/opt_pos_only/optional', ]), 'reexported_by': list([ ]), @@ -5933,7 +6141,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/optional_results', + 'id': 'tests/data/various_modules_package/function_module/optional_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -5944,7 +6152,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/optional_results/result_1', + 'tests/data/various_modules_package/function_module/optional_results/result_1', ]), }), dict({ @@ -5952,15 +6160,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/param_from_outside_the_package', + 'id': 'tests/data/various_modules_package/function_module/param_from_outside_the_package', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'param_from_outside_the_package', 'parameters': list([ - 'various_modules_package/function_module/param_from_outside_the_package/param_type', - 'various_modules_package/function_module/param_from_outside_the_package/param_value', + 'tests/data/various_modules_package/function_module/param_from_outside_the_package/param_type', + 'tests/data/various_modules_package/function_module/param_from_outside_the_package/param_value', ]), 'reexported_by': list([ ]), @@ -5972,19 +6180,19 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/param_position', + 'id': 'tests/data/various_modules_package/function_module/param_position', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'param_position', 'parameters': list([ - 'various_modules_package/function_module/param_position/self', - 'various_modules_package/function_module/param_position/a', - 'various_modules_package/function_module/param_position/b', - 'various_modules_package/function_module/param_position/c', - 'various_modules_package/function_module/param_position/d', - 'various_modules_package/function_module/param_position/e', + 'tests/data/various_modules_package/function_module/param_position/self', + 'tests/data/various_modules_package/function_module/param_position/a', + 'tests/data/various_modules_package/function_module/param_position/b', + 'tests/data/various_modules_package/function_module/param_position/c', + 'tests/data/various_modules_package/function_module/param_position/d', + 'tests/data/various_modules_package/function_module/param_position/e', ]), 'reexported_by': list([ ]), @@ -5996,30 +6204,30 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/params', + 'id': 'tests/data/various_modules_package/function_module/params', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'params', 'parameters': list([ - 'various_modules_package/function_module/params/integer', - 'various_modules_package/function_module/params/boolean', - 'various_modules_package/function_module/params/float_', - 'various_modules_package/function_module/params/none', - 'various_modules_package/function_module/params/string', - 'various_modules_package/function_module/params/obj', - 'various_modules_package/function_module/params/callexpr', - 'various_modules_package/function_module/params/union', - 'various_modules_package/function_module/params/union_with_none_1', - 'various_modules_package/function_module/params/union_with_none_2', - 'various_modules_package/function_module/params/list_', - 'various_modules_package/function_module/params/dictionary', - 'various_modules_package/function_module/params/set_', - 'various_modules_package/function_module/params/optional', - 'various_modules_package/function_module/params/tuple_', - 'various_modules_package/function_module/params/literal', - 'various_modules_package/function_module/params/any_', + 'tests/data/various_modules_package/function_module/params/integer', + 'tests/data/various_modules_package/function_module/params/boolean', + 'tests/data/various_modules_package/function_module/params/float_', + 'tests/data/various_modules_package/function_module/params/none', + 'tests/data/various_modules_package/function_module/params/string', + 'tests/data/various_modules_package/function_module/params/obj', + 'tests/data/various_modules_package/function_module/params/callexpr', + 'tests/data/various_modules_package/function_module/params/union', + 'tests/data/various_modules_package/function_module/params/union_with_none_1', + 'tests/data/various_modules_package/function_module/params/union_with_none_2', + 'tests/data/various_modules_package/function_module/params/list_', + 'tests/data/various_modules_package/function_module/params/dictionary', + 'tests/data/various_modules_package/function_module/params/set_', + 'tests/data/various_modules_package/function_module/params/optional', + 'tests/data/various_modules_package/function_module/params/tuple_', + 'tests/data/various_modules_package/function_module/params/literal', + 'tests/data/various_modules_package/function_module/params/any_', ]), 'reexported_by': list([ ]), @@ -6031,30 +6239,30 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/params_with_default_value', + 'id': 'tests/data/various_modules_package/function_module/params_with_default_value', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'params_with_default_value', 'parameters': list([ - 'various_modules_package/function_module/params_with_default_value/integer', - 'various_modules_package/function_module/params_with_default_value/boolean', - 'various_modules_package/function_module/params_with_default_value/float_', - 'various_modules_package/function_module/params_with_default_value/none', - 'various_modules_package/function_module/params_with_default_value/string', - 'various_modules_package/function_module/params_with_default_value/obj', - 'various_modules_package/function_module/params_with_default_value/callexpr', - 'various_modules_package/function_module/params_with_default_value/union', - 'various_modules_package/function_module/params_with_default_value/union_with_none_1', - 'various_modules_package/function_module/params_with_default_value/union_with_none_2', - 'various_modules_package/function_module/params_with_default_value/list_', - 'various_modules_package/function_module/params_with_default_value/dictionary', - 'various_modules_package/function_module/params_with_default_value/set_', - 'various_modules_package/function_module/params_with_default_value/optional', - 'various_modules_package/function_module/params_with_default_value/tuple_', - 'various_modules_package/function_module/params_with_default_value/literal', - 'various_modules_package/function_module/params_with_default_value/any_', + 'tests/data/various_modules_package/function_module/params_with_default_value/integer', + 'tests/data/various_modules_package/function_module/params_with_default_value/boolean', + 'tests/data/various_modules_package/function_module/params_with_default_value/float_', + 'tests/data/various_modules_package/function_module/params_with_default_value/none', + 'tests/data/various_modules_package/function_module/params_with_default_value/string', + 'tests/data/various_modules_package/function_module/params_with_default_value/obj', + 'tests/data/various_modules_package/function_module/params_with_default_value/callexpr', + 'tests/data/various_modules_package/function_module/params_with_default_value/union', + 'tests/data/various_modules_package/function_module/params_with_default_value/union_with_none_1', + 'tests/data/various_modules_package/function_module/params_with_default_value/union_with_none_2', + 'tests/data/various_modules_package/function_module/params_with_default_value/list_', + 'tests/data/various_modules_package/function_module/params_with_default_value/dictionary', + 'tests/data/various_modules_package/function_module/params_with_default_value/set_', + 'tests/data/various_modules_package/function_module/params_with_default_value/optional', + 'tests/data/various_modules_package/function_module/params_with_default_value/tuple_', + 'tests/data/various_modules_package/function_module/params_with_default_value/literal', + 'tests/data/various_modules_package/function_module/params_with_default_value/any_', ]), 'reexported_by': list([ ]), @@ -6066,7 +6274,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/public_no_params_no_result', + 'id': 'tests/data/various_modules_package/function_module/public_no_params_no_result', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -6084,15 +6292,15 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/req_name_only', + 'id': 'tests/data/various_modules_package/function_module/req_name_only', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'req_name_only', 'parameters': list([ - 'various_modules_package/function_module/req_name_only/required', - 'various_modules_package/function_module/req_name_only/optional', + 'tests/data/various_modules_package/function_module/req_name_only/required', + 'tests/data/various_modules_package/function_module/req_name_only/optional', ]), 'reexported_by': list([ ]), @@ -6104,7 +6312,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/result_from_outside_the_package', + 'id': 'tests/data/various_modules_package/function_module/result_from_outside_the_package', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -6115,7 +6323,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/result_from_outside_the_package/result_1', + 'tests/data/various_modules_package/function_module/result_from_outside_the_package/result_1', ]), }), dict({ @@ -6123,7 +6331,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/ret_conditional_statement', + 'id': 'tests/data/various_modules_package/function_module/ret_conditional_statement', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -6134,7 +6342,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/ret_conditional_statement/result_1', + 'tests/data/various_modules_package/function_module/ret_conditional_statement/result_1', ]), }), dict({ @@ -6142,7 +6350,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/set_results', + 'id': 'tests/data/various_modules_package/function_module/set_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -6153,7 +6361,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/set_results/result_1', + 'tests/data/various_modules_package/function_module/set_results/result_1', ]), }), dict({ @@ -6161,21 +6369,22 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/special_params', + 'id': 'tests/data/various_modules_package/function_module/special_params', 'is_class_method': False, 'is_property': False, 'is_public': True, 'is_static': False, 'name': 'special_params', 'parameters': list([ - 'various_modules_package/function_module/special_params/none_union', - 'various_modules_package/function_module/special_params/none_bool_union', - 'various_modules_package/function_module/special_params/bool_none_union', - 'various_modules_package/function_module/special_params/none_bool_none_union', - 'various_modules_package/function_module/special_params/none_bool_int_union', - 'various_modules_package/function_module/special_params/none_none_bool_none_union', - 'various_modules_package/function_module/special_params/none_list_union_none_none', - 'various_modules_package/function_module/special_params/none', + 'tests/data/various_modules_package/function_module/special_params/none_union', + 'tests/data/various_modules_package/function_module/special_params/none_bool_union', + 'tests/data/various_modules_package/function_module/special_params/bool_none_union', + 'tests/data/various_modules_package/function_module/special_params/bool_none_str', + 'tests/data/various_modules_package/function_module/special_params/none_bool_none_union', + 'tests/data/various_modules_package/function_module/special_params/none_bool_int_union', + 'tests/data/various_modules_package/function_module/special_params/none_none_bool_none_union', + 'tests/data/various_modules_package/function_module/special_params/none_list_union_none_none', + 'tests/data/various_modules_package/function_module/special_params/none', ]), 'reexported_by': list([ ]), @@ -6187,7 +6396,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/str_result', + 'id': 'tests/data/various_modules_package/function_module/str_result', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -6198,7 +6407,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/str_result/result_1', + 'tests/data/various_modules_package/function_module/str_result/result_1', ]), }), dict({ @@ -6206,7 +6415,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/tuple_results', + 'id': 'tests/data/various_modules_package/function_module/tuple_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -6217,8 +6426,8 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/tuple_results/result_1', - 'various_modules_package/function_module/tuple_results/result_2', + 'tests/data/various_modules_package/function_module/tuple_results/result_1', + 'tests/data/various_modules_package/function_module/tuple_results/result_2', ]), }), dict({ @@ -6226,7 +6435,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/union_dictionary_results', + 'id': 'tests/data/various_modules_package/function_module/union_dictionary_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -6237,7 +6446,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/union_dictionary_results/result_1', + 'tests/data/various_modules_package/function_module/union_dictionary_results/result_1', ]), }), dict({ @@ -6245,7 +6454,7 @@ 'description': '', 'full_docstring': '', }), - 'id': 'various_modules_package/function_module/union_results', + 'id': 'tests/data/various_modules_package/function_module/union_results', 'is_class_method': False, 'is_property': False, 'is_public': True, @@ -6256,7 +6465,7 @@ 'reexported_by': list([ ]), 'results': list([ - 'various_modules_package/function_module/union_results/result_1', + 'tests/data/various_modules_package/function_module/union_results/result_1', ]), }), ]) @@ -6265,7 +6474,7 @@ list([ dict({ 'alias': 'reex_1', - 'qualified_name': '._reexport_module_1', + 'qualified_name': '_reexport_module_1', }), dict({ 'alias': None, @@ -6283,10 +6492,26 @@ 'alias': None, 'qualified_name': '_reexport_module_4._reexported_function_4', }), + dict({ + 'alias': 'reexported_function_4_alias', + 'qualified_name': '_reexport_module_4._reexported_function_4_alias', + }), + dict({ + 'alias': None, + 'qualified_name': '_reexport_module_4._two_times_reexported', + }), + dict({ + 'alias': 'two_times_reexported', + 'qualified_name': '_reexport_module_4._two_times_reexported', + }), dict({ 'alias': None, 'qualified_name': 'enum_module._ReexportedEmptyEnum', }), + dict({ + 'alias': None, + 'qualified_name': 'file_creation._module_3.Reexported', + }), ]) # --- # name: test_imports[__init__ (wildcard_imports)] @@ -6348,7 +6573,7 @@ list([ ]) # --- -# name: test_modules[__init__] +# name: test_modules[__init__0] dict({ 'classes': list([ ]), @@ -6357,12 +6582,12 @@ ]), 'functions': list([ ]), - 'id': 'various_modules_package/__init__', + 'id': 'tests/data/various_modules_package', 'name': '__init__', 'qualified_imports': list([ dict({ 'alias': 'reex_1', - 'qualified_name': '._reexport_module_1', + 'qualified_name': '_reexport_module_1', }), dict({ 'alias': None, @@ -6380,10 +6605,26 @@ 'alias': None, 'qualified_name': '_reexport_module_4._reexported_function_4', }), + dict({ + 'alias': 'reexported_function_4_alias', + 'qualified_name': '_reexport_module_4._reexported_function_4_alias', + }), + dict({ + 'alias': None, + 'qualified_name': '_reexport_module_4._two_times_reexported', + }), + dict({ + 'alias': 'two_times_reexported', + 'qualified_name': '_reexport_module_4._two_times_reexported', + }), dict({ 'alias': None, 'qualified_name': 'enum_module._ReexportedEmptyEnum', }), + dict({ + 'alias': None, + 'qualified_name': 'file_creation._module_3.Reexported', + }), ]), 'wildcard_imports': list([ dict({ @@ -6392,113 +6633,807 @@ ]), }) # --- -# name: test_modules[another_module] +# name: test_modules[__init__1] dict({ 'classes': list([ - 'various_modules_package/another_path/another_module/AnotherClass', ]), - 'docstring': ''' - Another Module Docstring. - - Full Docstring Description - - ''', + 'docstring': '', 'enums': list([ ]), 'functions': list([ ]), - 'id': 'various_modules_package/another_path/another_module', - 'name': 'another_module', + 'id': 'tests/data/various_modules_package/file_creation', + 'name': '__init__', 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': '_module_2._private_reexported', + }), + dict({ + 'alias': None, + 'qualified_name': '_module_3.Reexported', + }), + dict({ + 'alias': None, + 'qualified_name': '_module_6.public_reexported', + }), + dict({ + 'alias': None, + 'qualified_name': 'tests.data.various_modules_package.another_path._reexported_from_another_package_2.ReexportedInAnotherPackageClass2', + }), + dict({ + 'alias': None, + 'qualified_name': 'tests.data.various_modules_package.another_path._reexported_from_another_package_2.reexported_in_another_package_function2', + }), + dict({ + 'alias': 'reexported_from_another_package_3', + 'qualified_name': 'tests.data.various_modules_package.another_path._reexported_from_another_package_3', + }), ]), 'wildcard_imports': list([ + dict({ + 'module_name': 'tests.data.various_modules_package.another_path._reexported_from_another_package', + }), ]), }) # --- -# name: test_modules[class_module] +# name: test_modules[_module_2] dict({ 'classes': list([ - 'various_modules_package/class_module/ClassModuleEmptyClassA', - 'various_modules_package/class_module/ClassModuleClassB', - 'various_modules_package/class_module/ClassModuleClassC', - 'various_modules_package/class_module/ClassModuleClassD', - 'various_modules_package/class_module/_ClassModulePrivateClassG', ]), 'docstring': '', 'enums': list([ ]), 'functions': list([ + 'tests/data/various_modules_package/file_creation/_module_2/_private_reexported', ]), - 'id': 'various_modules_package/class_module', - 'name': 'class_module', + 'id': 'tests/data/various_modules_package/file_creation/_module_2', + 'name': '_module_2', 'qualified_imports': list([ - dict({ - 'alias': None, - 'qualified_name': 'tests.data.main_package.another_path.another_module.yetAnotherClass', - }), ]), 'wildcard_imports': list([ ]), }) # --- -# name: test_modules[docstring_module] +# name: test_modules[_module_3] dict({ 'classes': list([ - 'various_modules_package/docstring_module/EpydocDocstringClass', - 'various_modules_package/docstring_module/RestDocstringClass', - 'various_modules_package/docstring_module/NumpyDocstringClass', - 'various_modules_package/docstring_module/GoogleDocstringClass', + 'tests/data/various_modules_package/file_creation/_module_3/Reexported', ]), - 'docstring': ''' - Test module for docstring tests. - - A module for testing the various docstring types. - - ''', + 'docstring': '', 'enums': list([ ]), 'functions': list([ ]), - 'id': 'various_modules_package/docstring_module', - 'name': 'docstring_module', + 'id': 'tests/data/various_modules_package/file_creation/_module_3', + 'name': '_module_3', 'qualified_imports': list([ ]), 'wildcard_imports': list([ ]), }) # --- -# name: test_modules[enum_module] +# name: test_modules[_module_4] dict({ 'classes': list([ + 'tests/data/various_modules_package/file_creation/_module_4/_Private', ]), 'docstring': '', 'enums': list([ - 'various_modules_package/enum_module/_ReexportedEmptyEnum', - 'various_modules_package/enum_module/EnumTest', - 'various_modules_package/enum_module/EnumTest2', - 'various_modules_package/enum_module/EnumTest3', - 'various_modules_package/enum_module/EmptyEnum', ]), 'functions': list([ ]), - 'id': 'various_modules_package/enum_module', - 'name': 'enum_module', + 'id': 'tests/data/various_modules_package/file_creation/_module_4', + 'name': '_module_4', 'qualified_imports': list([ - dict({ - 'alias': None, - 'qualified_name': 'enum.Enum', - }), - dict({ - 'alias': None, - 'qualified_name': 'enum.IntEnum', - }), - dict({ - 'alias': '_Enum', - 'qualified_name': 'enum.Enum', - }), - dict({ - 'alias': '_AcImportAlias', - 'qualified_name': 'another_path.another_module.AnotherClass', + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[_module_6] + dict({ + 'classes': list([ + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/file_creation/_module_6/public_reexported', + ]), + 'id': 'tests/data/various_modules_package/file_creation/_module_6', + 'name': '_module_6', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[_reexport_module_1] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/_reexport_module_1/ReexportClass', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/_reexport_module_1/reexported_function', + ]), + 'id': 'tests/data/various_modules_package/_reexport_module_1', + 'name': '_reexport_module_1', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[_reexport_module_2] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/_reexport_module_2/AnotherReexportClass', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/_reexport_module_2/reexported_function_2', + ]), + 'id': 'tests/data/various_modules_package/_reexport_module_2', + 'name': '_reexport_module_2', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[_reexport_module_3] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/_reexport_module_3/_ThirdReexportClass', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/_reexport_module_3/reexported_function_3', + ]), + 'id': 'tests/data/various_modules_package/_reexport_module_3', + 'name': '_reexport_module_3', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[_reexport_module_4] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/_reexport_module_4/FourthReexportClass', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/_reexport_module_4/_unreexported_function', + 'tests/data/various_modules_package/_reexport_module_4/_reexported_function_4', + 'tests/data/various_modules_package/_reexport_module_4/_reexported_function_4_alias', + 'tests/data/various_modules_package/_reexport_module_4/_two_times_reexported', + ]), + 'id': 'tests/data/various_modules_package/_reexport_module_4', + 'name': '_reexport_module_4', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[_reexport_module_5] + dict({ + 'classes': list([ + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/_reexport_module_5/reexported_in_an_internal_package', + ]), + 'id': 'tests/data/various_modules_package/_reexport_module_5', + 'name': '_reexport_module_5', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[_reexported_from_another_package] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/another_path/_reexported_from_another_package/ReexportedInAnotherPackageClass', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/another_path/_reexported_from_another_package/reexported_in_another_package_function', + 'tests/data/various_modules_package/another_path/_reexported_from_another_package/_still_internal_function', + ]), + 'id': 'tests/data/various_modules_package/another_path/_reexported_from_another_package', + 'name': '_reexported_from_another_package', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[_reexported_from_another_package_2] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/another_path/_reexported_from_another_package_2/ReexportedInAnotherPackageClass2', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/another_path/_reexported_from_another_package_2/reexported_in_another_package_function2', + 'tests/data/various_modules_package/another_path/_reexported_from_another_package_2/_still_internal_function2', + ]), + 'id': 'tests/data/various_modules_package/another_path/_reexported_from_another_package_2', + 'name': '_reexported_from_another_package_2', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[_reexported_from_another_package_3] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/another_path/_reexported_from_another_package_3/ReexportedInAnotherPackageClass3', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/another_path/_reexported_from_another_package_3/reexported_in_another_package_function3', + 'tests/data/various_modules_package/another_path/_reexported_from_another_package_3/_still_internal_function3', + ]), + 'id': 'tests/data/various_modules_package/another_path/_reexported_from_another_package_3', + 'name': '_reexported_from_another_package_3', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[abstract_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/abstract_module/AbstractModuleClass', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/abstract_module', + 'name': 'abstract_module', + 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': 'abc.ABC', + }), + dict({ + 'alias': None, + 'qualified_name': 'abc.abstractmethod', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[aliasing_module_1] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/aliasing/aliasing_module_1/_AliasingModuleClassA', + 'tests/data/various_modules_package/aliasing/aliasing_module_1/AliasingModuleClassB', + 'tests/data/various_modules_package/aliasing/aliasing_module_1/AliasingModuleClassC', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/aliasing/aliasing_module_1', + 'name': 'aliasing_module_1', + 'qualified_imports': list([ + dict({ + 'alias': 'AliasModule2', + 'qualified_name': 'aliasing_module_2.AliasingModule2ClassA', + }), + dict({ + 'alias': 'ImportMeAlias', + 'qualified_name': 'aliasing_module_3.ImportMeAliasingModuleClass', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[aliasing_module_2] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/aliasing/aliasing_module_2/AliasingModule2ClassA', + 'tests/data/various_modules_package/aliasing/aliasing_module_2/AliasingModuleClassB', + 'tests/data/various_modules_package/aliasing/aliasing_module_2/ImportMeAliasingModuleClass', + 'tests/data/various_modules_package/aliasing/aliasing_module_2/AliasingModuleClassC', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/aliasing/aliasing_module_2', + 'name': 'aliasing_module_2', + 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': 'aliasing_module_1.AliasingModuleClassC', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[aliasing_module_3] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/aliasing/aliasing_module_3/ImportMeAliasingModuleClass', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/aliasing/aliasing_module_3', + 'name': 'aliasing_module_3', + 'qualified_imports': list([ + dict({ + 'alias': 'ImportMeAlias', + 'qualified_name': 'aliasing_module_2.ImportMeAliasingModuleClass', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[another_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/another_path/another_module/AnotherClass', + ]), + 'docstring': ''' + Another Module Docstring. + + Full Docstring Description + + ''', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/another_path/another_module', + 'name': 'another_module', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[attribute_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/attribute_module/AttributesClassA', + 'tests/data/various_modules_package/attribute_module/AttributesClassB', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/attribute_module', + 'name': 'attribute_module', + 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': 'typing.Optional', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Final', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Literal', + }), + dict({ + 'alias': None, + 'qualified_name': 'tests.data.main_package.another_path.another_module.AnotherClass', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[class_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/class_module/ClassModuleEmptyClassA', + 'tests/data/various_modules_package/class_module/ClassModuleClassB', + 'tests/data/various_modules_package/class_module/ClassModuleClassC', + 'tests/data/various_modules_package/class_module/ClassModuleClassD', + 'tests/data/various_modules_package/class_module/_ClassModulePrivateClassG', + 'tests/data/various_modules_package/class_module/InheritFromException', + 'tests/data/various_modules_package/class_module/InheritFromException2', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/class_module', + 'name': 'class_module', + 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': 'tests.data.main_package.another_path.another_module.yetAnotherClass', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[docstring_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/docstring_module/EpydocDocstringClass', + 'tests/data/various_modules_package/docstring_module/RestDocstringClass', + 'tests/data/various_modules_package/docstring_module/NumpyDocstringClass', + 'tests/data/various_modules_package/docstring_module/GoogleDocstringClass', + ]), + 'docstring': ''' + Test module for docstring tests. + + A module for testing the various docstring types. + + ''', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/docstring_module', + 'name': 'docstring_module', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[enum_module] + dict({ + 'classes': list([ + ]), + 'docstring': '', + 'enums': list([ + 'tests/data/various_modules_package/enum_module/_ReexportedEmptyEnum', + 'tests/data/various_modules_package/enum_module/EnumTest', + 'tests/data/various_modules_package/enum_module/EnumTest2', + 'tests/data/various_modules_package/enum_module/EnumTest3', + 'tests/data/various_modules_package/enum_module/EmptyEnum', + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/enum_module', + 'name': 'enum_module', + 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': 'enum.Enum', + }), + dict({ + 'alias': None, + 'qualified_name': 'enum.IntEnum', + }), + dict({ + 'alias': '_Enum', + 'qualified_name': 'enum.Enum', + }), + dict({ + 'alias': '_AcImportAlias', + 'qualified_name': 'another_path.another_module.AnotherClass', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[function_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/function_module/FunctionModuleClassA', + 'tests/data/various_modules_package/function_module/FunctionModuleClassB', + 'tests/data/various_modules_package/function_module/FunctionModulePropertiesClass', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/function_module/_private', + 'tests/data/various_modules_package/function_module/public_no_params_no_result', + 'tests/data/various_modules_package/function_module/params', + 'tests/data/various_modules_package/function_module/params_with_default_value', + 'tests/data/various_modules_package/function_module/illegal_params', + 'tests/data/various_modules_package/function_module/special_params', + 'tests/data/various_modules_package/function_module/param_position', + 'tests/data/various_modules_package/function_module/opt_pos_only', + 'tests/data/various_modules_package/function_module/req_name_only', + 'tests/data/various_modules_package/function_module/arg', + 'tests/data/various_modules_package/function_module/args_type', + 'tests/data/various_modules_package/function_module/int_result', + 'tests/data/various_modules_package/function_module/str_result', + 'tests/data/various_modules_package/function_module/bool_result', + 'tests/data/various_modules_package/function_module/float_result', + 'tests/data/various_modules_package/function_module/none_result', + 'tests/data/various_modules_package/function_module/obj_result', + 'tests/data/various_modules_package/function_module/callexr_result_class', + 'tests/data/various_modules_package/function_module/callexr_result_function', + 'tests/data/various_modules_package/function_module/tuple_results', + 'tests/data/various_modules_package/function_module/union_results', + 'tests/data/various_modules_package/function_module/list_results', + 'tests/data/various_modules_package/function_module/illegal_list_results', + 'tests/data/various_modules_package/function_module/dictionary_results', + 'tests/data/various_modules_package/function_module/dictionary_results_no_key_no_value', + 'tests/data/various_modules_package/function_module/illegal_dictionary_results', + 'tests/data/various_modules_package/function_module/union_dictionary_results', + 'tests/data/various_modules_package/function_module/set_results', + 'tests/data/various_modules_package/function_module/illegal_set_results', + 'tests/data/various_modules_package/function_module/optional_results', + 'tests/data/various_modules_package/function_module/literal_results', + 'tests/data/various_modules_package/function_module/any_results', + 'tests/data/various_modules_package/function_module/callable_type', + 'tests/data/various_modules_package/function_module/param_from_outside_the_package', + 'tests/data/various_modules_package/function_module/result_from_outside_the_package', + 'tests/data/various_modules_package/function_module/ret_conditional_statement', + ]), + 'id': 'tests/data/various_modules_package/function_module', + 'name': 'function_module', + 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': 'typing.Callable', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Optional', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Literal', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Any', + }), + dict({ + 'alias': None, + 'qualified_name': 'tests.data.main_package.another_path.another_module.AnotherClass', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[import_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/import_module/ImportClass', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/import_module', + 'name': 'import_module', + 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': 'another_path.another_module.AnotherClass', + }), + dict({ + 'alias': None, + 'qualified_name': 'class_module.ClassModuleClassB', + }), + dict({ + 'alias': 'ClMCC', + 'qualified_name': 'class_module.ClassModuleClassC', + }), + dict({ + 'alias': 'ClMCD', + 'qualified_name': 'class_module.ClassModuleClassD', + }), + dict({ + 'alias': 'ClMECA', + 'qualified_name': 'class_module.ClassModuleEmptyClassA', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[infer_types_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/infer_types_module/InferMe', + 'tests/data/various_modules_package/infer_types_module/InferMe2', + 'tests/data/various_modules_package/infer_types_module/InferMe3', + 'tests/data/various_modules_package/infer_types_module/InferMyTypes', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/infer_types_module', + 'name': 'infer_types_module', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[inheritance_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/inheritance_module/PublicSuperClass', + 'tests/data/various_modules_package/inheritance_module/PublicSubClass', + 'tests/data/various_modules_package/inheritance_module/_PrivateInternalClass', + 'tests/data/various_modules_package/inheritance_module/PublicSubClass2', + 'tests/data/various_modules_package/inheritance_module/PublicSubClassFromNested', + 'tests/data/various_modules_package/inheritance_module/_TransitiveInternalClassA', + 'tests/data/various_modules_package/inheritance_module/_TransitiveInternalClassB', + 'tests/data/various_modules_package/inheritance_module/InheritTransitively', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/inheritance_module', + 'name': 'inheritance_module', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[module_1] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/file_creation/module_1/C', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/file_creation/module_1', + 'name': 'module_1', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[module_5] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/file_creation/package_1/module_5/C', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/file_creation/package_1/module_5', + 'name': 'module_5', + 'qualified_imports': list([ + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[type_var_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/type_var_module/GenericTypeVar', + 'tests/data/various_modules_package/type_var_module/GenericTypeVar2', + 'tests/data/various_modules_package/type_var_module/SequenceTypeVar', + 'tests/data/various_modules_package/type_var_module/SequenceTypeVar2', + 'tests/data/various_modules_package/type_var_module/CollectionTypeVar', + 'tests/data/various_modules_package/type_var_module/CollectionTypeVar2', + 'tests/data/various_modules_package/type_var_module/MappingTypeVar', + 'tests/data/various_modules_package/type_var_module/MappingTypeVar2', + 'tests/data/various_modules_package/type_var_module/MappingTypeVar3', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + 'tests/data/various_modules_package/type_var_module/type_var_func', + 'tests/data/various_modules_package/type_var_module/multiple_type_var', + 'tests/data/various_modules_package/type_var_module/type_var_fun_invariance_with_bound', + ]), + 'id': 'tests/data/various_modules_package/type_var_module', + 'name': 'type_var_module', + 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': 'typing.TypeVar', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Generic', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Sequence', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Collection', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Mapping', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Any', + }), + ]), + 'wildcard_imports': list([ + ]), + }) +# --- +# name: test_modules[variance_module] + dict({ + 'classes': list([ + 'tests/data/various_modules_package/variance_module/A', + 'tests/data/various_modules_package/variance_module/VarianceClassOnlyCovarianceNoBound', + 'tests/data/various_modules_package/variance_module/VarianceClassOnlyVarianceNoBound', + 'tests/data/various_modules_package/variance_module/VarianceClassOnlyContravarianceNoBound', + 'tests/data/various_modules_package/variance_module/VarianceClassAll', + ]), + 'docstring': '', + 'enums': list([ + ]), + 'functions': list([ + ]), + 'id': 'tests/data/various_modules_package/variance_module', + 'name': 'variance_module', + 'qualified_imports': list([ + dict({ + 'alias': None, + 'qualified_name': 'typing.Generic', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.TypeVar', + }), + dict({ + 'alias': None, + 'qualified_name': 'typing.Literal', }), ]), 'wildcard_imports': list([ diff --git a/tests/safeds_stubgen/api_analyzer/test__get_api.py b/tests/safeds_stubgen/api_analyzer/test__get_api.py index 8ef3c73c..20c0bb83 100644 --- a/tests/safeds_stubgen/api_analyzer/test__get_api.py +++ b/tests/safeds_stubgen/api_analyzer/test__get_api.py @@ -8,42 +8,45 @@ from safeds_stubgen.docstring_parsing import DocstringStyle if TYPE_CHECKING: + from collections.abc import Generator + from syrupy import SnapshotAssertion # Setup: API data _test_dir = Path(__file__).parent.parent.parent _test_package_name = "various_modules_package" +package_root = Path(_test_dir / "data" / _test_package_name) api_data_paintext = get_api( package_name=_test_package_name, - root=Path(_test_dir / "data" / _test_package_name), + root=package_root, is_test_run=True, ).to_dict() api_data_epydoc = get_api( package_name=_test_package_name, - root=Path(_test_dir / "data" / _test_package_name), + root=package_root, docstring_style=DocstringStyle.EPYDOC, is_test_run=True, ).to_dict() api_data_numpy = get_api( package_name=_test_package_name, - root=Path(_test_dir / "data" / _test_package_name), + root=package_root, docstring_style=DocstringStyle.NUMPYDOC, is_test_run=True, ).to_dict() api_data_rest = get_api( package_name=_test_package_name, - root=Path(_test_dir / "data" / _test_package_name), + root=package_root, docstring_style=DocstringStyle.REST, is_test_run=True, ).to_dict() api_data_google = get_api( package_name=_test_package_name, - root=Path(_test_dir / "data" / _test_package_name), + root=package_root, docstring_style=DocstringStyle.GOOGLE, is_test_run=True, ).to_dict() @@ -111,26 +114,37 @@ def _get_specific_function_data( # ############################## Tests ############################## # -@pytest.mark.parametrize( - argnames="module_name", - argvalues=[ - _class_module_name, - "another_module", - _enum_module_name, - "__init__", - _docstring_module_name, - ], - ids=[ - _class_module_name, - "another_module", - _enum_module_name, - "__init__", - _docstring_module_name, - ], -) -def test_modules(module_name: str, snapshot: SnapshotAssertion) -> None: - module_data = _get_specific_module_data(module_name) - assert module_data == snapshot +def _python_files() -> Generator: + return package_root.rglob(pattern="*.py") + + +def _python_file_ids() -> Generator: + files = package_root.rglob(pattern="*.py") + for file in files: + yield file.parts[-1].split(".py")[0] + + +@pytest.mark.parametrize("python_file", _python_files(), ids=_python_file_ids()) +def test_modules(python_file: Path, snapshot: SnapshotAssertion) -> None: + file_name = python_file.parts[-1] + is_package = file_name == "__init__.py" + + module_id = "" + if is_package: + for part in python_file.parts[:-1]: + if part.startswith("_"): + return + module_id = "/".join(python_file.parts[:-1]) + + api_data = get_api_data("plaintext") + + for module in api_data["modules"]: + is_init_file = is_package and module_id.endswith(module["id"]) + is_module_file = str(python_file).replace("\\", "/").endswith(f"{module['id']}.py") + if is_init_file or is_module_file: + assert module == snapshot + return + raise AssertionError # Todo new tests after issue #38 @@ -337,7 +351,12 @@ def test_global_functions(module_name: str, snapshot: SnapshotAssertion) -> None (_function_module_name, "FunctionModuleClassC", "plaintext"), (_function_module_name, "FunctionModulePropertiesClass", "plaintext"), (_infer_types_module_name, "InferMyTypes", "plaintext"), - (_type_var_module_name, "TypeVarClass", "plaintext"), + (_type_var_module_name, "GenericTypeVar", "plaintext"), + (_type_var_module_name, "GenericTypeVar2", "plaintext"), + (_type_var_module_name, "SequenceTypeVar", "plaintext"), + (_type_var_module_name, "SequenceTypeVar2", "plaintext"), + (_type_var_module_name, "CollectionTypeVar", "plaintext"), + (_type_var_module_name, "CollectionTypeVar2", "plaintext"), ("_reexport_module_1", "ReexportClass", "plaintext"), (_abstract_module_name, "AbstractModuleClass", "plaintext"), (_docstring_module_name, "EpydocDocstringClass", "epydoc"), @@ -355,7 +374,12 @@ def test_global_functions(module_name: str, snapshot: SnapshotAssertion) -> None "FunctionModuleClassC", "FunctionModulePropertiesClass", "InferMyTypes", - "TypeVarClass", + "GenericTypeVar", + "GenericTypeVar2", + "SequenceTypeVar", + "SequenceTypeVar2", + "CollectionTypeVar", + "CollectionTypeVar2", "ReexportClass", "AbstractModuleClass", "EpydocDocstringClass", diff --git a/tests/safeds_stubgen/api_analyzer/test_api.py b/tests/safeds_stubgen/api_analyzer/test_api.py new file mode 100644 index 00000000..aa668192 --- /dev/null +++ b/tests/safeds_stubgen/api_analyzer/test_api.py @@ -0,0 +1,38 @@ +import pytest +from safeds_stubgen.api_analyzer import ( + NamedType, + Parameter, + ParameterAssignment, +) +from safeds_stubgen.docstring_parsing import ParameterDocstring + + +@pytest.mark.parametrize( + argnames=("default_value", "is_required", "assigned_by", "is_variadic"), + argvalues=[ + ("test_str", False, ParameterAssignment.POSITIONAL_VARARG, True), + (None, True, ParameterAssignment.NAMED_VARARG, True), + (None, True, ParameterAssignment.IMPLICIT, False), + (None, True, ParameterAssignment.POSITION_ONLY, False), + (None, True, ParameterAssignment.POSITION_OR_NAME, False), + (None, True, ParameterAssignment.NAME_ONLY, False), + ], +) +def test_parameter( + default_value: str | None, + is_required: bool, + assigned_by: ParameterAssignment, + is_variadic: bool, +) -> None: + parameter = Parameter( + id="test/test.Test/test/test_parameter", + name="test_parameter", + is_optional=True, + default_value=default_value, + assigned_by=assigned_by, + docstring=ParameterDocstring("'hashvalue'", "r", "r"), + type=NamedType(name="str", qname=""), + ) + + assert parameter.is_required == is_required + assert parameter.is_variadic == is_variadic diff --git a/tests/safeds_stubgen/api_analyzer/test_api_visitor.py b/tests/safeds_stubgen/api_analyzer/test_api_visitor.py deleted file mode 100644 index afc46fac..00000000 --- a/tests/safeds_stubgen/api_analyzer/test_api_visitor.py +++ /dev/null @@ -1,75 +0,0 @@ -from __future__ import annotations - -import pytest - -# noinspection PyProtectedMember -from safeds_stubgen.api_analyzer._api import API - -# noinspection PyProtectedMember -from safeds_stubgen.api_analyzer._ast_visitor import MyPyAstVisitor -from safeds_stubgen.docstring_parsing import PlaintextDocstringParser - - -@pytest.mark.parametrize( - ("module_path", "expected_id", "package_name"), - [ - ( - "path\\to\\some\\path\\package_name\\src\\data", - "package_name/src/data", - "package_name", - ), - ( - "path\\to\\some\\path\\package_name", - "package_name", - "package_name", - ), - ( - "path\\to\\some\\path\\no_package", - "", - "package_name", - ), - ( - "", - "", - "package_name", - ), - ( - "path\\to\\some\\package_name\\package_name\\src\\data", - "package_name/package_name/src/data", - "package_name", - ), - ( - "path\\to\\some\\path\\package_name\\src\\package_name", - "package_name/src/package_name", - "package_name", - ), - ( - "path\\to\\some\\package_name\\package_name\\src\\package_name", - "package_name/package_name/src/package_name", - "package_name", - ), - ], - ids=[ - "With unneeded data", - "Without unneeded data", - "No package name in qname", - "No qname", - "Package name twice in qname 1", - "Package name twice in qname 2", - "Package name twice in qname 3", - ], -) -def test__create_module_id(module_path: str, expected_id: str, package_name: str) -> None: - api = API( - distribution="dist_name", - package=package_name, - version="1.3", - ) - - visitor = MyPyAstVisitor(PlaintextDocstringParser(), api, {}) - if not expected_id: - with pytest.raises(ValueError, match="Package name could not be found in the module path."): - visitor._create_module_id(module_path) - else: - module_id = visitor._create_module_id(module_path) - assert module_id == expected_id diff --git a/tests/safeds_stubgen/docstring_parsing/test_epydoc_parser.py b/tests/safeds_stubgen/docstring_parsing/test_epydoc_parser.py index 89801409..e816617f 100644 --- a/tests/safeds_stubgen/docstring_parsing/test_epydoc_parser.py +++ b/tests/safeds_stubgen/docstring_parsing/test_epydoc_parser.py @@ -26,7 +26,6 @@ build_result=mypy_build, files=files, package_paths=[], - root=Path(_test_dir / "data" / "docstring_parser_package"), )[0] diff --git a/tests/safeds_stubgen/docstring_parsing/test_get_full_docstring.py b/tests/safeds_stubgen/docstring_parsing/test_get_full_docstring.py index 3e2425bc..ce14f131 100644 --- a/tests/safeds_stubgen/docstring_parsing/test_get_full_docstring.py +++ b/tests/safeds_stubgen/docstring_parsing/test_get_full_docstring.py @@ -21,7 +21,6 @@ build_result=mypy_build, files=files, package_paths=[], - root=Path(_test_dir / "data" / "docstring_parser_package"), )[0] diff --git a/tests/safeds_stubgen/docstring_parsing/test_googledoc_parser.py b/tests/safeds_stubgen/docstring_parsing/test_googledoc_parser.py index f91ae12d..d370d501 100644 --- a/tests/safeds_stubgen/docstring_parsing/test_googledoc_parser.py +++ b/tests/safeds_stubgen/docstring_parsing/test_googledoc_parser.py @@ -29,7 +29,6 @@ build_result=mypy_build, files=files, package_paths=[], - root=Path(_test_dir / "data" / "docstring_parser_package"), )[0] diff --git a/tests/safeds_stubgen/docstring_parsing/test_numpydoc_parser.py b/tests/safeds_stubgen/docstring_parsing/test_numpydoc_parser.py index d01ade45..156513e4 100644 --- a/tests/safeds_stubgen/docstring_parsing/test_numpydoc_parser.py +++ b/tests/safeds_stubgen/docstring_parsing/test_numpydoc_parser.py @@ -30,7 +30,6 @@ build_result=mypy_build, files=files, package_paths=[], - root=Path(_test_dir / "data" / _test_package_name), )[0] diff --git a/tests/safeds_stubgen/docstring_parsing/test_plaintext_docstring_parser.py b/tests/safeds_stubgen/docstring_parsing/test_plaintext_docstring_parser.py index 3902cace..4b762264 100644 --- a/tests/safeds_stubgen/docstring_parsing/test_plaintext_docstring_parser.py +++ b/tests/safeds_stubgen/docstring_parsing/test_plaintext_docstring_parser.py @@ -28,7 +28,6 @@ build_result=mypy_build, files=files, package_paths=[], - root=Path(_test_dir / "data" / "docstring_parser_package"), )[0] diff --git a/tests/safeds_stubgen/docstring_parsing/test_restdoc_parser.py b/tests/safeds_stubgen/docstring_parsing/test_restdoc_parser.py index 6839001d..61f5019a 100644 --- a/tests/safeds_stubgen/docstring_parsing/test_restdoc_parser.py +++ b/tests/safeds_stubgen/docstring_parsing/test_restdoc_parser.py @@ -26,7 +26,6 @@ build_result=mypy_build, files=files, package_paths=[], - root=Path(_test_dir / "data" / "docstring_parser_package"), )[0] diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_module_3].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_module_3].sdsstub index 13a5c6ae..bf122653 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_module_3].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_module_3].sdsstub @@ -1,4 +1,4 @@ -@PythonModule("various_modules_package.file_creation._module_3") -package variousModulesPackage.fileCreation.Module3 +@PythonModule("tests.data.various_modules_package") +package tests.data.variousModulesPackage class Reexported() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_module_6].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_module_6].sdsstub index 1a35cac7..dc15a986 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_module_6].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_module_6].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.file_creation._module_6") -package variousModulesPackage.fileCreation.Module6 +@PythonModule("tests.data.various_modules_package.file_creation") +package tests.data.variousModulesPackage.fileCreation // TODO Result type information missing. @Pure diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_1].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_1].sdsstub index ae12122b..e69ddc75 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_1].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_1].sdsstub @@ -1,4 +1,9 @@ -@PythonModule("various_modules_package._reexport_module_1") -package variousModulesPackage.ReexportModule1 +@PythonModule("tests.data.various_modules_package") +package tests.data.variousModulesPackage + +// TODO Result type information missing. +@Pure +@PythonName("reexported_function") +fun reexportedFunction() class ReexportClass() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_2].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_2].sdsstub index 51c2cfb0..ea1f505c 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_2].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_2].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package._reexport_module_2") -package variousModulesPackage.ReexportModule2 +@PythonModule("tests.data.various_modules_package") +package tests.data.variousModulesPackage // TODO Result type information missing. @Pure diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_3].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_3].sdsstub new file mode 100644 index 00000000..be9afd36 --- /dev/null +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_3].sdsstub @@ -0,0 +1,7 @@ +@PythonModule("tests.data.various_modules_package") +package tests.data.variousModulesPackage + +// TODO Result type information missing. +@Pure +@PythonName("reexported_function_3") +fun reexportedFunction3() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_4].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_4].sdsstub index 825344dd..72605c23 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_4].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexport_module_4].sdsstub @@ -1,4 +1,14 @@ -@PythonModule("various_modules_package._reexport_module_4") -package variousModulesPackage.ReexportModule4 +@PythonModule("tests.data.various_modules_package") +package tests.data.variousModulesPackage + +// TODO Result type information missing. +@Pure +@PythonName("_reexported_function_4_alias") +fun reexportedFunction4Alias() + +// TODO Result type information missing. +@Pure +@PythonName("_two_times_reexported") +fun twoTimesReexported() class FourthReexportClass() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexported_from_another_package].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexported_from_another_package].sdsstub new file mode 100644 index 00000000..6e6b144e --- /dev/null +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexported_from_another_package].sdsstub @@ -0,0 +1,8 @@ +@PythonModule("tests.data.various_modules_package.file_creation") +package tests.data.variousModulesPackage.fileCreation + +@Pure +@PythonName("reexported_in_another_package_function") +fun reexportedInAnotherPackageFunction() -> result1: String + +class ReexportedInAnotherPackageClass() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexported_from_another_package_2].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexported_from_another_package_2].sdsstub new file mode 100644 index 00000000..2fda21c7 --- /dev/null +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexported_from_another_package_2].sdsstub @@ -0,0 +1,8 @@ +@PythonModule("tests.data.various_modules_package.file_creation") +package tests.data.variousModulesPackage.fileCreation + +@Pure +@PythonName("reexported_in_another_package_function2") +fun reexportedInAnotherPackageFunction2() -> result1: String + +class ReexportedInAnotherPackageClass2() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexported_from_another_package_3].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexported_from_another_package_3].sdsstub new file mode 100644 index 00000000..c2724cbe --- /dev/null +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[_reexported_from_another_package_3].sdsstub @@ -0,0 +1,8 @@ +@PythonModule("tests.data.various_modules_package.file_creation") +package tests.data.variousModulesPackage.fileCreation + +@Pure +@PythonName("reexported_in_another_package_function3") +fun reexportedInAnotherPackageFunction3() -> result1: String + +class ReexportedInAnotherPackageClass3() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[abstract_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[abstract_module].sdsstub index 3f62de73..2678b679 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[abstract_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[abstract_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.abstract_module") -package variousModulesPackage.abstractModule +@PythonModule("tests.data.various_modules_package.abstract_module") +package tests.data.variousModulesPackage.abstractModule class AbstractModuleClass { @PythonName("abstract_property_method") attr abstractPropertyMethod: union diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_1].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_1].sdsstub index 3bc4f5d6..e17ad1ff 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_1].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_1].sdsstub @@ -1,8 +1,8 @@ -@PythonModule("various_modules_package.aliasing.aliasing_module_1") -package variousModulesPackage.aliasing.aliasingModule1 +@PythonModule("tests.data.various_modules_package.aliasing.aliasing_module_1") +package tests.data.variousModulesPackage.aliasing.aliasingModule1 -from variousModulesPackage.aliasing.aliasingModule2 import AliasingModule2ClassA -from variousModulesPackage.aliasing.aliasingModule3 import ImportMeAliasingModuleClass +from tests.data.variousModulesPackage.aliasing.aliasingModule2 import AliasingModule2ClassA +from tests.data.variousModulesPackage.aliasing.aliasingModule3 import ImportMeAliasingModuleClass class AliasingModuleClassB() @@ -16,6 +16,9 @@ class AliasingModuleClassC() { static attr typedAliasAttr2: AliasingModule2ClassA @PythonName("infer_alias_attr2") static attr inferAliasAttr2: AliasingModule2ClassA + // TODO Attribute has no type information. + @PythonName("infer_alias_attr3") + static attr inferAliasAttr3 // TODO An internal class must not be used as a type in a public class. // TODO List type has to many type arguments. @PythonName("alias_list") diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_2].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_2].sdsstub index 2955104b..831cbcc1 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_2].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_2].sdsstub @@ -1,7 +1,7 @@ -@PythonModule("various_modules_package.aliasing.aliasing_module_2") -package variousModulesPackage.aliasing.aliasingModule2 +@PythonModule("tests.data.various_modules_package.aliasing.aliasing_module_2") +package tests.data.variousModulesPackage.aliasing.aliasingModule2 -from variousModulesPackage.aliasing.aliasingModule1 import AliasingModuleClassC +from tests.data.variousModulesPackage.aliasing.aliasingModule1 import AliasingModuleClassC class AliasingModule2ClassA() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_3].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_3].sdsstub index ec910335..df5f6a1f 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_3].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[aliasing_module_3].sdsstub @@ -1,7 +1,7 @@ -@PythonModule("various_modules_package.aliasing.aliasing_module_3") -package variousModulesPackage.aliasing.aliasingModule3 +@PythonModule("tests.data.various_modules_package.aliasing.aliasing_module_3") +package tests.data.variousModulesPackage.aliasing.aliasingModule3 -from variousModulesPackage.aliasing.aliasingModule2 import ImportMeAliasingModuleClass +from tests.data.variousModulesPackage.aliasing.aliasingModule2 import ImportMeAliasingModuleClass class ImportMeAliasingModuleClass() { @PythonName("import_alias_attr") diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[another_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[another_module].sdsstub index 9427bd52..7b9bf87b 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[another_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[another_module].sdsstub @@ -1,4 +1,4 @@ -@PythonModule("various_modules_package.another_path.another_module") -package variousModulesPackage.anotherPath.anotherModule +@PythonModule("tests.data.various_modules_package.another_path.another_module") +package tests.data.variousModulesPackage.anotherPath.anotherModule class AnotherClass() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[attribute_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[attribute_module].sdsstub index f761891e..eec870ab 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[attribute_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[attribute_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.attribute_module") -package variousModulesPackage.attributeModule +@PythonModule("tests.data.various_modules_package.attribute_module") +package tests.data.variousModulesPackage.attributeModule from tests.data.mainPackage.anotherPath.anotherModule import AnotherClass @@ -94,7 +94,7 @@ class AttributesClassB() { @PythonName("attr_type_from_outside_package") static attr attrTypeFromOutsidePackage: AnotherClass @PythonName("attr_default_value_from_outside_package") - static attr attrDefaultValueFromOutsidePackage: () -> param1: AnotherClass + static attr attrDefaultValueFromOutsidePackage: AnotherClass @PythonName("init_attr") attr initAttr: Boolean diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[class_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[class_module].sdsstub index c4059ac1..8c7fc201 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[class_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[class_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.class_module") -package variousModulesPackage.classModule +@PythonModule("tests.data.various_modules_package.class_module") +package tests.data.variousModulesPackage.classModule from tests.data.mainPackage.anotherPath.anotherModule import yetAnotherClass diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[docstring_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[docstring_module].sdsstub index 85efda92..d11a07b0 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[docstring_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[docstring_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.docstring_module") -package variousModulesPackage.docstringModule +@PythonModule("tests.data.various_modules_package.docstring_module") +package tests.data.variousModulesPackage.docstringModule class EpydocDocstringClass( @PythonName("param_1") param1: String diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[enum_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[enum_module].sdsstub index 83c0e80b..4a4d75c1 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[enum_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[enum_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.enum_module") -package variousModulesPackage.enumModule +@PythonModule("tests.data.various_modules_package") +package tests.data.variousModulesPackage enum _ReexportedEmptyEnum diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[function_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[function_module].sdsstub index 8a41218c..b4ad03d4 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[function_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[function_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.function_module") -package variousModulesPackage.functionModule +@PythonModule("tests.data.various_modules_package.function_module") +package tests.data.variousModulesPackage.functionModule from tests.data.mainPackage.anotherPath.anotherModule import AnotherClass @@ -79,6 +79,7 @@ fun specialParams( @PythonName("none_union") noneUnion: Nothing?, @PythonName("none_bool_union") noneBoolUnion: Boolean?, @PythonName("bool_none_union") boolNoneUnion: Boolean?, + @PythonName("bool_none_str") boolNoneStr: String?, @PythonName("none_bool_none_union") noneBoolNoneUnion: Boolean?, @PythonName("none_bool_int_union") noneBoolIntUnion: union, @PythonName("none_none_bool_none_union") noneNoneBoolNoneUnion: Boolean?, diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[import_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[import_module].sdsstub index 5ae002a1..3f5a8a82 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[import_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[import_module].sdsstub @@ -1,11 +1,11 @@ -@PythonModule("various_modules_package.import_module") -package variousModulesPackage.importModule +@PythonModule("tests.data.various_modules_package.import_module") +package tests.data.variousModulesPackage.importModule -from variousModulesPackage.anotherPath.anotherModule import AnotherClass -from variousModulesPackage.classModule import ClassModuleClassB -from variousModulesPackage.classModule import ClassModuleClassC -from variousModulesPackage.classModule import ClassModuleClassD -from variousModulesPackage.classModule import ClassModuleEmptyClassA +from tests.data.variousModulesPackage.anotherPath.anotherModule import AnotherClass +from tests.data.variousModulesPackage.classModule import ClassModuleClassB +from tests.data.variousModulesPackage.classModule import ClassModuleClassC +from tests.data.variousModulesPackage.classModule import ClassModuleClassD +from tests.data.variousModulesPackage.classModule import ClassModuleEmptyClassA class ImportClass() sub AnotherClass { @PythonName("typed_import_attr") diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[infer_types_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[infer_types_module].sdsstub index 03b492be..57ac673c 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[infer_types_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[infer_types_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.infer_types_module") -package variousModulesPackage.inferTypesModule +@PythonModule("tests.data.various_modules_package.infer_types_module") +package tests.data.variousModulesPackage.inferTypesModule class InferMe() @@ -20,8 +20,11 @@ class InferMyTypes( static attr inferStr: String @PythonName("infer_none") static attr inferNone: Nothing? - @PythonName("infer_obj") - static attr inferObj: () -> param1: InferMe + @PythonName("infer_call_expr") + static attr inferCallExpr: InferMe + // TODO Attribute has no type information. + @PythonName("uninferable_callable") + static attr uninferableCallable // TODO Attribute has no type information. @PythonName("init_infer") attr initInfer diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[inheritance_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[inheritance_module].sdsstub index f424bcf9..9e206d07 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[inheritance_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[inheritance_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.inheritance_module") -package variousModulesPackage.inheritanceModule +@PythonModule("tests.data.various_modules_package.inheritance_module") +package tests.data.variousModulesPackage.inheritanceModule class PublicSuperClass() { @Pure diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[module_1].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[module_1].sdsstub index fae86c54..e5c135a0 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[module_1].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[module_1].sdsstub @@ -1,4 +1,4 @@ -@PythonModule("various_modules_package.file_creation.module_1") -package variousModulesPackage.fileCreation.module1 +@PythonModule("tests.data.various_modules_package.file_creation.module_1") +package tests.data.variousModulesPackage.fileCreation.module1 class C() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[module_5].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[module_5].sdsstub index 7e20559d..eee2ef65 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[module_5].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[module_5].sdsstub @@ -1,4 +1,4 @@ -@PythonModule("various_modules_package.file_creation.package_1.module_5") -package variousModulesPackage.fileCreation.package1.module5 +@PythonModule("tests.data.various_modules_package.file_creation.package_1.module_5") +package tests.data.variousModulesPackage.fileCreation.package1.module5 class C() diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[type_var_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[type_var_module].sdsstub index e55164ca..1936dc8d 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[type_var_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[type_var_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.type_var_module") -package variousModulesPackage.typeVarModule +@PythonModule("tests.data.various_modules_package.type_var_module") +package tests.data.variousModulesPackage.typeVarModule @Pure @PythonName("type_var_func") @@ -20,7 +20,7 @@ fun typeVarFunInvarianceWithBound( a: List ) -> result1: TIn -class TypeVarClass( +class GenericTypeVar( items: List ) { @Pure @@ -30,10 +30,58 @@ class TypeVarClass( ) -> result1: T } -class TypeVarClass2() { +class GenericTypeVar2() { @Pure @PythonName("type_var_class_method2") fun typeVarClassMethod2( a: T ) -> result1: T } + +class SequenceTypeVar( + items: List +) { + @Pure + @PythonName("type_var_class_method") + fun typeVarClassMethod( + a: T + ) -> result1: T +} + +class SequenceTypeVar2() { + @Pure + @PythonName("type_var_class_method2") + fun typeVarClassMethod2( + a: T + ) -> result1: T +} + +class CollectionTypeVar( + items: List +) { + @Pure + @PythonName("type_var_class_method") + fun typeVarClassMethod( + a: T + ) -> result1: T +} + +class CollectionTypeVar2() { + @Pure + @PythonName("type_var_class_method2") + fun typeVarClassMethod2( + a: T + ) -> result1: T +} + +class MappingTypeVar( + data: Map? = null +) + +class MappingTypeVar2( + data: Map> +) + +class MappingTypeVar3( + data: Map>? +) diff --git a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[variance_module].sdsstub b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[variance_module].sdsstub index 1775853f..95b0812e 100644 --- a/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[variance_module].sdsstub +++ b/tests/safeds_stubgen/stubs_generator/__snapshots__/test_generate_stubs/TestStubFileGeneration.test_stub_creation[variance_module].sdsstub @@ -1,5 +1,5 @@ -@PythonModule("various_modules_package.variance_module") -package variousModulesPackage.varianceModule +@PythonModule("tests.data.various_modules_package.variance_module") +package tests.data.variousModulesPackage.varianceModule class A() diff --git a/tests/safeds_stubgen/stubs_generator/test_generate_stubs.py b/tests/safeds_stubgen/stubs_generator/test_generate_stubs.py index cb9a25ab..878f8520 100644 --- a/tests/safeds_stubgen/stubs_generator/test_generate_stubs.py +++ b/tests/safeds_stubgen/stubs_generator/test_generate_stubs.py @@ -26,7 +26,7 @@ _test_package_name = "various_modules_package" _test_package_dir = Path(_lib_dir / "data" / _test_package_name) _out_dir = Path(_lib_dir / "data" / "out") -_out_dir_stubs = Path(_out_dir / _test_package_name) +_out_dir_stubs = Path(_out_dir / "tests/data" / _test_package_name) api = get_api(_test_package_name, _test_package_dir, is_test_run=True) stubs_generator = StubsStringGenerator(api, naming_convention=NamingConvention.SAFE_DS) @@ -34,7 +34,7 @@ def test_file_creation() -> None: - _generate_stubs_files(stubs_data, api, _out_dir, stubs_generator, naming_convention=NamingConvention.SAFE_DS) + _generate_stubs_files(stubs_data, _out_dir, stubs_generator, naming_convention=NamingConvention.SAFE_DS) _assert_file_creation_recursive( python_path=Path(_test_package_dir / "file_creation"), stub_path=Path(_out_dir_stubs / "file_creation"), @@ -101,7 +101,7 @@ def test_stub_creation(self, python_file: Path, snapshot_sds_stub: SnapshotAsser return # For these files stubs won't get created, because they are either empty or private. - if file_name in {"__init__", "_reexport_module_3", "_module_2", "_module_4"}: + if file_name in {"__init__", "_module_2", "_module_4", "_reexport_module_5"}: return raise AssertionError(f"Stub file not found for '{file_name}'.")