schrodinger.test.pytest_customizations module¶
Local Schrodinger py.test customizations.
-
schrodinger.test.pytest_customizations.register_fixtures(module)[source]¶ Fixtures need to be registered in the pytest_customizations module.
- Parameters
module – module to register pytest.fixture functions
-
schrodinger.test.pytest_customizations.pytest_report_teststatus(report)[source]¶ Put Killed tests into a separate group from other failures.
-
schrodinger.test.pytest_customizations.pytest_collect_file(parent, path)[source]¶ Pytest function: Should “path” be collected as a test?
Adds compiled tests.
-
schrodinger.test.pytest_customizations.pytest_pycollect_makemodule(path, parent)[source]¶ For all Python test files, use
ModuleWithPatchCheckinstead of the normalpytest.Moduleclass.
-
schrodinger.test.pytest_customizations.pytest_itemcollected(item)[source]¶ Don’t run most Python tests under memtest.
-
schrodinger.test.pytest_customizations.pytest_collection_finish(session)[source]¶ Work-around for a bad cache of conftest.py
Removes the cache after all tests have been loaded. At this point, all available conftests will also be loaded, so the caching won’t be a problem. Still leaves us vulnerable to incorrect caching during test discovery, though.
-
schrodinger.test.pytest_customizations.pytest_addhooks(pluginmanager)[source]¶ Add a hook to designate an owner of each test.
-
class
schrodinger.test.pytest_customizations.ModuleWithPatchCheck(*k, **kw)[source]¶ Bases:
_pytest.python.ModuleA Module collector that makes sure there are no active patches after module import and again after all tests in the module have completed.
-
name¶
-
parent¶
-
config¶
-
session¶
-
fspath¶
-
exception
CollectError¶ Bases:
Exceptionan error during collection, contains a custom message.
-
__init__(*args, **kwargs)¶ Initialize self. See help(type(self)) for accurate signature.
-
args¶
-
with_traceback()¶ Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.
-
-
__init__(fspath: py._path.local.LocalPath, parent=None, config: Optional[_pytest.config.Config] = None, session: Optional[Session] = None, nodeid: Optional[str] = None) → None¶ Initialize self. See help(type(self)) for accurate signature.
-
add_marker(marker: Union[str, _pytest.mark.structures.MarkDecorator], append: bool = True) → None¶ dynamically add a marker object to the node.
- Parameters
marker (
strorpytest.mark.*object) –append=Truewhether to append the marker, ifFalseinsert at position0.
-
addfinalizer(fin: Callable[], object]) → None¶ register a function to be called when this node is finalized.
This method can only be called when this node is active in a setup chain, for example during self.setup().
-
classnamefilter(name: str) → bool¶
-
property
cls¶ Python class object this node was collected from (can be None).
-
collect() → Iterable[Union[_pytest.nodes.Item, _pytest.nodes.Collector]]¶ returns a list of children (items and collectors) for this collection node.
-
classmethod
from_parent(parent, *, fspath, **kw)¶ The public constructor
-
funcnamefilter(name: str) → bool¶
-
get_closest_marker(name: str, default: Optional[_pytest.mark.structures.Mark] = None) → Optional[_pytest.mark.structures.Mark]¶ return the first marker matching the name, from closest (for example function) to farther level (for example module level).
- Parameters
default – fallback return value of no marker was found
name – name to filter by
-
gethookproxy(fspath: py._path.local.LocalPath)¶
-
getmodpath(stopatmodule: bool = True, includemodule: bool = False) → str¶ return python path relative to the containing module.
-
getparent(cls: Type[_NodeType]) → Optional[_NodeType]¶ get the next parent node (including ourself) which is an instance of the given class
-
property
ihook¶ fspath sensitive hook proxy used to call pytest hooks
-
property
instance¶ Python instance object this node was collected from (can be None).
-
isinitpath(path: py._path.local.LocalPath) → bool¶
-
isnosetest(obj: object) → bool¶ Look for the __test__ attribute, which is applied by the @nose.tools.istest decorator
-
istestclass(obj: object, name: str) → bool¶
-
istestfunction(obj: object, name: str) → bool¶
-
iter_markers(name: Optional[str] = None) → Iterator[_pytest.mark.structures.Mark]¶ - Parameters
name – if given, filter the results by the name attribute
iterate over all markers of the node
-
iter_markers_with_node(name: Optional[str] = None) → Iterator[Tuple[_pytest.nodes.Node, _pytest.mark.structures.Mark]]¶ - Parameters
name – if given, filter the results by the name attribute
iterate over all markers of the node returns sequence of tuples (node, mark)
-
listchain() → List[_pytest.nodes.Node]¶ return list of all parent collectors up to self, starting from root of collection tree.
-
listextrakeywords() → Set[str]¶ Return a set of all extra keywords in self and any parents.
-
listnames() → List[str]¶
-
property
module¶ Python module object this node was collected from (can be None).
-
property
nodeid¶ a ::-separated string denoting its collection tree address.
-
property
obj¶ Underlying Python object.
-
reportinfo() → Tuple[Union[py._path.local.LocalPath, str], int, str]¶
-
repr_failure(excinfo: _pytest._code.code.ExceptionInfo[BaseException]) → Union[str, _pytest._code.code.TerminalRepr]¶ Return a representation of a collection failure.
- Parameters
excinfo – Exception information for the failure.
-
setup() → None¶
-
warn(warning: PytestWarning) → None¶ Issue a warning for this item.
Warnings will be displayed after the test session, unless explicitly suppressed
- Parameters
warning (Warning) – the warning instance to issue. Must be a subclass of PytestWarning.
- Raises
ValueError – if
warninginstance is not a subclass of PytestWarning.
Example usage:
node.warn(PytestWarning("some message"))
-