#136219 Report by node gh-actions covering 2125 tests from 62 modules resulted into 17 errors

Report

ObsPy version
1.4.0.post0+306.gdca687edb8
GitHub Pull Request
https://github.com/obspy/obspy/pull/3370
Report file
JSON document
Total runtime
322.4 sec
Report date/time
Nov. 15, 2023, 6:28 p.m.

System / Python

Architecture
64bit
Machine
x86_64
Node
gh-actions
Processor
x86_64
Python Compiler
GCC 12.3.0
Python Implementation
CPython
Python Version
3.12.0
Release
6.2.0-1015-azure
System
Linux
Version
#15~22.04.1-Ubuntu SMP Fri Oct 6 13:20:44 UTC 2023

Dependencies

cartopy
0.22.0
decorator
5.1.1
flake8
---
geographiclib
2.0
lxml
4.9.3
matplotlib
3.8.1
numpy
1.26.0
obspy
1.4.0.post0+306.gdca687edb8
pyproj
3.6.1
pytest
7.4.3
pytest-json-report
1.5.0
requests
2.31.0
scipy
1.11.3
setuptools
68.2.2
shapefile
---
sqlalchemy
1.4.49

Modules (62)

Module Errors / Failures Tracebacks
obspy.clients Not tested -
obspy.clients.earthworm Not tested -
obspy.clients.fdsn - -
obspy.clients.filesystem - -
obspy.clients.iris Not tested -
obspy.clients.neic Not tested -
obspy.clients.nrl - -
obspy.clients.seedlink - -
obspy.clients.syngine Not tested -
obspy.core 2 1 2
obspy.core.event - -
obspy.core.inventory - -
obspy.core.util - -
obspy.geodetics - -
obspy.imaging 4 3 4 5 6
obspy.io.ah - -
obspy.io.alsep - -
obspy.io.arclink - -
obspy.io.ascii - -
obspy.io.cmtsolution - -
obspy.io.cnv - -
obspy.io.css - -
obspy.io.csv - -
obspy.io.cybershake 2 7 8
obspy.io.dmx - -
obspy.io.focmec - -
obspy.io.gcf - -
obspy.io.gse2 - -
obspy.io.hypodd - -
obspy.io.iaspei - -
obspy.io.json - -
obspy.io.kinemetrics - -
obspy.io.kml - -
obspy.io.mseed - -
obspy.io.ndk - -
obspy.io.nied 5 9 10 11 12 13
obspy.io.nlloc - -
obspy.io.nordic - -
obspy.io.pdas - -
obspy.io.pde - -
obspy.io.quakeml - -
obspy.io.reftek 2 14 15
obspy.io.rg16 2 16 17
obspy.io.sac - -
obspy.io.scardec - -
obspy.io.seg2 - -
obspy.io.segy - -
obspy.io.seisan - -
obspy.io.seiscomp - -
obspy.io.sh - -
obspy.io.shapefile - -
obspy.io.stationtxt - -
obspy.io.stationxml - -
obspy.io.wav - -
obspy.io.win - -
obspy.io.xseed - -
obspy.io.y - -
obspy.io.zmap - -
obspy.realtime - -
obspy.scripts - -
obspy.signal - -
obspy.taup - -
Summary 17 17

Tracebacks (17)

Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/tests/test_waveform_plugins.py", line 263, in test_is_format
if is_format(file) is True: # pragma: no cover
^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/y/tests/data/YAZRSPE.20100119.060433'>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='/tmp/obspy-czretamx.tmp'>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='./STA2.testlines'>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='./STA2.testlines'>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='./STA2.testlines'>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='./STA2.testlines'>
cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe386185800>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
@classmethod
def from_call(
cls,
func: "Callable[[], TResult]",
when: "Literal['collect', 'setup', 'call', 'teardown']",
reraise: Optional[
Union[Type[BaseException], Tuple[Type[BaseException], ...]]
] = None,
) -> "CallInfo[TResult]":
"""Call func, wrapping the result in a CallInfo.
:param func:
The function to call. Called without arguments.
:param when:
The phase in which the function is called.
:param reraise:
Exception or exceptions that shall propagate if raised by the
function, instead of being wrapped in the CallInfo.
"""
excinfo = None
start = timing.time()
precise_start = timing.perf_counter()
try:
> result: Optional[TResult] = func()
../_pytest/runner.py:341:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> lambda: ihook(item=item, **kwds), when=when, reraise=reraise
)
../_pytest/runner.py:262:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <HookCaller 'pytest_runtest_call'>
kwargs = {'item': <DoctestItem obspy.io.cybershake>}, firstresult = False
def __call__(self, **kwargs: object) -> Any:
"""Call the hook.
Only accepts keyword arguments, which should match the hook
specification.
Returns the result(s) of calling all registered plugins, see
:ref:`calling`.
"""
assert (
not self.is_historic()
), "Cannot directly call a historic hook - use call_historic instead."
self._verify_all_args_are_provided(kwargs)
firstresult = self.spec.opts.get("firstresult", False) if self.spec else False
> return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
../pluggy/_hooks.py:493:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <_pytest.config.PytestPluginManager object at 0x7fe395395df0>
hook_name = 'pytest_runtest_call'
methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/share/miniconda3/envs/test/lib/python3.12/...fca70>>, <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe38c71c3b0>>, ...]
kwargs = {'item': <DoctestItem obspy.io.cybershake>}, firstresult = False
def _hookexec(
self,
hook_name: str,
methods: Sequence[HookImpl],
kwargs: Mapping[str, object],
firstresult: bool,
) -> object | list[object]:
# called from all hookcaller instances.
# enable_tracing will set its own wrapping function at self._inner_hookexec
> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
../pluggy/_manager.py:115:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
hook_name = 'pytest_runtest_call'
hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/share/miniconda3/envs/test/lib/python3.12/...fca70>>, <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe38c71c3b0>>, ...]
caller_kwargs = {'item': <DoctestItem obspy.io.cybershake>}, firstresult = False
def _multicall(
hook_name: str,
hook_impls: Sequence[HookImpl],
caller_kwargs: Mapping[str, object],
firstresult: bool,
) -> object | list[object]:
"""Execute a call into multiple python functions/methods and return the
result(s).
``caller_kwargs`` comes from HookCaller.__call__().
"""
__tracebackhide__ = True
results: list[object] = []
exception = None
only_new_style_wrappers = True
try: # run impl and wrapper setup functions in a loop
teardowns: list[Teardown] = []
try:
for hook_impl in reversed(hook_impls):
try:
args = [caller_kwargs[argname] for argname in hook_impl.argnames]
except KeyError:
for argname in hook_impl.argnames:
if argname not in caller_kwargs:
raise HookCallError(
f"hook call must provide argument {argname!r}"
)
if hook_impl.hookwrapper:
only_new_style_wrappers = False
try:
# If this cast is not valid, a type error is raised below,
# which is the desired response.
res = hook_impl.function(*args)
wrapper_gen = cast(Generator[None, Result[object], None], res)
next(wrapper_gen) # first yield
teardowns.append((wrapper_gen,))
except StopIteration:
_raise_wrapfail(wrapper_gen, "did not yield")
elif hook_impl.wrapper:
try:
# If this cast is not valid, a type error is raised below,
# which is the desired response.
res = hook_impl.function(*args)
function_gen = cast(Generator[None, object, object], res)
next(function_gen) # first yield
teardowns.append(function_gen)
except StopIteration:
_raise_wrapfail(function_gen, "did not yield")
else:
res = hook_impl.function(*args)
if res is not None:
results.append(res)
if firstresult: # halt further impl calls
break
except BaseException as exc:
exception = exc
finally:
# Fast path - only new-style wrappers, no Result.
if only_new_style_wrappers:
if firstresult: # first result hooks return a single value
result = results[0] if results else None
else:
result = results
# run all wrapper post-yield blocks
for teardown in reversed(teardowns):
try:
if exception is not None:
teardown.throw(exception) # type: ignore[union-attr]
else:
teardown.send(result) # type: ignore[union-attr]
# Following is unreachable for a well behaved hook wrapper.
# Try to force finalizers otherwise postponed till GC action.
# Note: close() may raise if generator handles GeneratorExit.
teardown.close() # type: ignore[union-attr]
except StopIteration as si:
result = si.value
exception = None
continue
except BaseException as e:
exception = e
continue
_raise_wrapfail(teardown, "has second yield") # type: ignore[arg-type]
if exception is not None:
raise exception.with_traceback(exception.__traceback__)
else:
return result
# Slow path - need to support old-style wrappers.
else:
if firstresult: # first result hooks return a single value
outcome: Result[object | list[object]] = Result(
results[0] if results else None, exception
)
else:
outcome = Result(results, exception)
# run all wrapper post-yield blocks
for teardown in reversed(teardowns):
if isinstance(teardown, tuple):
try:
> teardown[0].send(outcome)
../pluggy/_callers.py:130:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
@pytest.hookimpl(hookwrapper=True, tryfirst=True)
def pytest_runtest_call() -> Generator[None, None, None]:
> yield from unraisable_exception_runtest_hook()
../_pytest/unraisableexception.py:88:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
with catch_unraisable_exception() as cm:
yield
if cm.unraisable:
if cm.unraisable.err_msg is not None:
err_msg = cm.unraisable.err_msg
else:
err_msg = "Exception ignored in"
msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
msg += "".join(
traceback.format_exception(
cm.unraisable.exc_type,
cm.unraisable.exc_value,
cm.unraisable.exc_traceback,
)
)
> warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
E
E Traceback (most recent call last):
E File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
E is_format = is_format(filename)
E ^^^^^^^^^^^^^^^^^^^
E ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/cybershake/tests/data/test.grm'>
../_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/cybershake/tests/data/test.grm'>
cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe386184400>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
@classmethod
def from_call(
cls,
func: "Callable[[], TResult]",
when: "Literal['collect', 'setup', 'call', 'teardown']",
reraise: Optional[
Union[Type[BaseException], Tuple[Type[BaseException], ...]]
] = None,
) -> "CallInfo[TResult]":
"""Call func, wrapping the result in a CallInfo.
:param func:
The function to call. Called without arguments.
:param when:
The phase in which the function is called.
:param reraise:
Exception or exceptions that shall propagate if raised by the
function, instead of being wrapped in the CallInfo.
"""
excinfo = None
start = timing.time()
precise_start = timing.perf_counter()
try:
> result: Optional[TResult] = func()
../_pytest/runner.py:341:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> lambda: ihook(item=item, **kwds), when=when, reraise=reraise
)
../_pytest/runner.py:262:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <HookCaller 'pytest_runtest_call'>
kwargs = {'item': <DoctestItem obspy.io.nied>}, firstresult = False
def __call__(self, **kwargs: object) -> Any:
"""Call the hook.
Only accepts keyword arguments, which should match the hook
specification.
Returns the result(s) of calling all registered plugins, see
:ref:`calling`.
"""
assert (
not self.is_historic()
), "Cannot directly call a historic hook - use call_historic instead."
self._verify_all_args_are_provided(kwargs)
firstresult = self.spec.opts.get("firstresult", False) if self.spec else False
> return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
../pluggy/_hooks.py:493:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <_pytest.config.PytestPluginManager object at 0x7fe395395df0>
hook_name = 'pytest_runtest_call'
methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/share/miniconda3/envs/test/lib/python3.12/...fca70>>, <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe38c71c3b0>>, ...]
kwargs = {'item': <DoctestItem obspy.io.nied>}, firstresult = False
def _hookexec(
self,
hook_name: str,
methods: Sequence[HookImpl],
kwargs: Mapping[str, object],
firstresult: bool,
) -> object | list[object]:
# called from all hookcaller instances.
# enable_tracing will set its own wrapping function at self._inner_hookexec
> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
../pluggy/_manager.py:115:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
hook_name = 'pytest_runtest_call'
hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/share/miniconda3/envs/test/lib/python3.12/...fca70>>, <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe38c71c3b0>>, ...]
caller_kwargs = {'item': <DoctestItem obspy.io.nied>}, firstresult = False
def _multicall(
hook_name: str,
hook_impls: Sequence[HookImpl],
caller_kwargs: Mapping[str, object],
firstresult: bool,
) -> object | list[object]:
"""Execute a call into multiple python functions/methods and return the
result(s).
``caller_kwargs`` comes from HookCaller.__call__().
"""
__tracebackhide__ = True
results: list[object] = []
exception = None
only_new_style_wrappers = True
try: # run impl and wrapper setup functions in a loop
teardowns: list[Teardown] = []
try:
for hook_impl in reversed(hook_impls):
try:
args = [caller_kwargs[argname] for argname in hook_impl.argnames]
except KeyError:
for argname in hook_impl.argnames:
if argname not in caller_kwargs:
raise HookCallError(
f"hook call must provide argument {argname!r}"
)
if hook_impl.hookwrapper:
only_new_style_wrappers = False
try:
# If this cast is not valid, a type error is raised below,
# which is the desired response.
res = hook_impl.function(*args)
wrapper_gen = cast(Generator[None, Result[object], None], res)
next(wrapper_gen) # first yield
teardowns.append((wrapper_gen,))
except StopIteration:
_raise_wrapfail(wrapper_gen, "did not yield")
elif hook_impl.wrapper:
try:
# If this cast is not valid, a type error is raised below,
# which is the desired response.
res = hook_impl.function(*args)
function_gen = cast(Generator[None, object, object], res)
next(function_gen) # first yield
teardowns.append(function_gen)
except StopIteration:
_raise_wrapfail(function_gen, "did not yield")
else:
res = hook_impl.function(*args)
if res is not None:
results.append(res)
if firstresult: # halt further impl calls
break
except BaseException as exc:
exception = exc
finally:
# Fast path - only new-style wrappers, no Result.
if only_new_style_wrappers:
if firstresult: # first result hooks return a single value
result = results[0] if results else None
else:
result = results
# run all wrapper post-yield blocks
for teardown in reversed(teardowns):
try:
if exception is not None:
teardown.throw(exception) # type: ignore[union-attr]
else:
teardown.send(result) # type: ignore[union-attr]
# Following is unreachable for a well behaved hook wrapper.
# Try to force finalizers otherwise postponed till GC action.
# Note: close() may raise if generator handles GeneratorExit.
teardown.close() # type: ignore[union-attr]
except StopIteration as si:
result = si.value
exception = None
continue
except BaseException as e:
exception = e
continue
_raise_wrapfail(teardown, "has second yield") # type: ignore[arg-type]
if exception is not None:
raise exception.with_traceback(exception.__traceback__)
else:
return result
# Slow path - need to support old-style wrappers.
else:
if firstresult: # first result hooks return a single value
outcome: Result[object | list[object]] = Result(
results[0] if results else None, exception
)
else:
outcome = Result(results, exception)
# run all wrapper post-yield blocks
for teardown in reversed(teardowns):
if isinstance(teardown, tuple):
try:
> teardown[0].send(outcome)
../pluggy/_callers.py:130:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
@pytest.hookimpl(hookwrapper=True, tryfirst=True)
def pytest_runtest_call() -> Generator[None, None, None]:
> yield from unraisable_exception_runtest_hook()
../_pytest/unraisableexception.py:88:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
with catch_unraisable_exception() as cm:
yield
if cm.unraisable:
if cm.unraisable.err_msg is not None:
err_msg = cm.unraisable.err_msg
else:
err_msg = "Exception ignored in"
msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
msg += "".join(
traceback.format_exception(
cm.unraisable.exc_type,
cm.unraisable.exc_value,
cm.unraisable.exc_traceback,
)
)
> warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
E
E Traceback (most recent call last):
E File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
E is_format = is_format(filename)
E ^^^^^^^^^^^^^^^^^^^
E ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/nied/tests/data/test.knet'>
../_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/nied/tests/data/test.knet'>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 625, in _generic_reader
generic = callback_func(pathname_or_url, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/decorator.py", line 232, in fun
return caller(func, *(extras + args), **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/decorator.py", line 143, in uncompress_file
return func(filename, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/stream.py", line 251, in _read
stream, format = _read_from_plugin('waveform', filename, format=format,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/gse2/core.py", line 120, in _is_gse1
with open(filename, 'rb') as f:
^^^^^^^^^^^^^^^^^^^^
TypeError: expected str, bytes or os.PathLike object, not BufferedReader
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='/tmp/obspy-yyomqbbt.tmp'>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 625, in _generic_reader
generic = callback_func(pathname_or_url, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/decorator.py", line 232, in fun
return caller(func, *(extras + args), **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/decorator.py", line 143, in uncompress_file
return func(filename, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/stream.py", line 251, in _read
stream, format = _read_from_plugin('waveform', filename, format=format,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/gse2/core.py", line 120, in _is_gse1
with open(filename, 'rb') as f:
^^^^^^^^^^^^^^^^^^^^
TypeError: expected str, bytes or os.PathLike object, not BytesIO
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='/tmp/obspy-r9__vwsi.tmp'>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/nied/tests/data/test.knet'>
cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe386184400>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
@classmethod
def from_call(
cls,
func: "Callable[[], TResult]",
when: "Literal['collect', 'setup', 'call', 'teardown']",
reraise: Optional[
Union[Type[BaseException], Tuple[Type[BaseException], ...]]
] = None,
) -> "CallInfo[TResult]":
"""Call func, wrapping the result in a CallInfo.
:param func:
The function to call. Called without arguments.
:param when:
The phase in which the function is called.
:param reraise:
Exception or exceptions that shall propagate if raised by the
function, instead of being wrapped in the CallInfo.
"""
excinfo = None
start = timing.time()
precise_start = timing.perf_counter()
try:
> result: Optional[TResult] = func()
../_pytest/runner.py:341:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> lambda: ihook(item=item, **kwds), when=when, reraise=reraise
)
../_pytest/runner.py:262:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <HookCaller 'pytest_runtest_call'>
kwargs = {'item': <DoctestItem obspy.io.reftek>}, firstresult = False
def __call__(self, **kwargs: object) -> Any:
"""Call the hook.
Only accepts keyword arguments, which should match the hook
specification.
Returns the result(s) of calling all registered plugins, see
:ref:`calling`.
"""
assert (
not self.is_historic()
), "Cannot directly call a historic hook - use call_historic instead."
self._verify_all_args_are_provided(kwargs)
firstresult = self.spec.opts.get("firstresult", False) if self.spec else False
> return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
../pluggy/_hooks.py:493:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <_pytest.config.PytestPluginManager object at 0x7fe395395df0>
hook_name = 'pytest_runtest_call'
methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/share/miniconda3/envs/test/lib/python3.12/...fca70>>, <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe38c71c3b0>>, ...]
kwargs = {'item': <DoctestItem obspy.io.reftek>}, firstresult = False
def _hookexec(
self,
hook_name: str,
methods: Sequence[HookImpl],
kwargs: Mapping[str, object],
firstresult: bool,
) -> object | list[object]:
# called from all hookcaller instances.
# enable_tracing will set its own wrapping function at self._inner_hookexec
> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
../pluggy/_manager.py:115:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
hook_name = 'pytest_runtest_call'
hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/share/miniconda3/envs/test/lib/python3.12/...fca70>>, <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe38c71c3b0>>, ...]
caller_kwargs = {'item': <DoctestItem obspy.io.reftek>}, firstresult = False
def _multicall(
hook_name: str,
hook_impls: Sequence[HookImpl],
caller_kwargs: Mapping[str, object],
firstresult: bool,
) -> object | list[object]:
"""Execute a call into multiple python functions/methods and return the
result(s).
``caller_kwargs`` comes from HookCaller.__call__().
"""
__tracebackhide__ = True
results: list[object] = []
exception = None
only_new_style_wrappers = True
try: # run impl and wrapper setup functions in a loop
teardowns: list[Teardown] = []
try:
for hook_impl in reversed(hook_impls):
try:
args = [caller_kwargs[argname] for argname in hook_impl.argnames]
except KeyError:
for argname in hook_impl.argnames:
if argname not in caller_kwargs:
raise HookCallError(
f"hook call must provide argument {argname!r}"
)
if hook_impl.hookwrapper:
only_new_style_wrappers = False
try:
# If this cast is not valid, a type error is raised below,
# which is the desired response.
res = hook_impl.function(*args)
wrapper_gen = cast(Generator[None, Result[object], None], res)
next(wrapper_gen) # first yield
teardowns.append((wrapper_gen,))
except StopIteration:
_raise_wrapfail(wrapper_gen, "did not yield")
elif hook_impl.wrapper:
try:
# If this cast is not valid, a type error is raised below,
# which is the desired response.
res = hook_impl.function(*args)
function_gen = cast(Generator[None, object, object], res)
next(function_gen) # first yield
teardowns.append(function_gen)
except StopIteration:
_raise_wrapfail(function_gen, "did not yield")
else:
res = hook_impl.function(*args)
if res is not None:
results.append(res)
if firstresult: # halt further impl calls
break
except BaseException as exc:
exception = exc
finally:
# Fast path - only new-style wrappers, no Result.
if only_new_style_wrappers:
if firstresult: # first result hooks return a single value
result = results[0] if results else None
else:
result = results
# run all wrapper post-yield blocks
for teardown in reversed(teardowns):
try:
if exception is not None:
teardown.throw(exception) # type: ignore[union-attr]
else:
teardown.send(result) # type: ignore[union-attr]
# Following is unreachable for a well behaved hook wrapper.
# Try to force finalizers otherwise postponed till GC action.
# Note: close() may raise if generator handles GeneratorExit.
teardown.close() # type: ignore[union-attr]
except StopIteration as si:
result = si.value
exception = None
continue
except BaseException as e:
exception = e
continue
_raise_wrapfail(teardown, "has second yield") # type: ignore[arg-type]
if exception is not None:
raise exception.with_traceback(exception.__traceback__)
else:
return result
# Slow path - need to support old-style wrappers.
else:
if firstresult: # first result hooks return a single value
outcome: Result[object | list[object]] = Result(
results[0] if results else None, exception
)
else:
outcome = Result(results, exception)
# run all wrapper post-yield blocks
for teardown in reversed(teardowns):
if isinstance(teardown, tuple):
try:
> teardown[0].send(outcome)
../pluggy/_callers.py:130:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
@pytest.hookimpl(hookwrapper=True, tryfirst=True)
def pytest_runtest_call() -> Generator[None, None, None]:
> yield from unraisable_exception_runtest_hook()
../_pytest/unraisableexception.py:88:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
with catch_unraisable_exception() as cm:
yield
if cm.unraisable:
if cm.unraisable.err_msg is not None:
err_msg = cm.unraisable.err_msg
else:
err_msg = "Exception ignored in"
msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
msg += "".join(
traceback.format_exception(
cm.unraisable.exc_type,
cm.unraisable.exc_value,
cm.unraisable.exc_traceback,
)
)
> warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
E
E Traceback (most recent call last):
E File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
E is_format = is_format(filename)
E ^^^^^^^^^^^^^^^^^^^
E ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/reftek/tests/data/225051000_00008656'>
../_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/reftek/tests/data/225051000_00008656'>
cls = <class '_pytest.runner.CallInfo'>
func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe385b1ad40>
when = 'call'
reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)
@classmethod
def from_call(
cls,
func: "Callable[[], TResult]",
when: "Literal['collect', 'setup', 'call', 'teardown']",
reraise: Optional[
Union[Type[BaseException], Tuple[Type[BaseException], ...]]
] = None,
) -> "CallInfo[TResult]":
"""Call func, wrapping the result in a CallInfo.
:param func:
The function to call. Called without arguments.
:param when:
The phase in which the function is called.
:param reraise:
Exception or exceptions that shall propagate if raised by the
function, instead of being wrapped in the CallInfo.
"""
excinfo = None
start = timing.time()
precise_start = timing.perf_counter()
try:
> result: Optional[TResult] = func()
../_pytest/runner.py:341:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
> lambda: ihook(item=item, **kwds), when=when, reraise=reraise
)
../_pytest/runner.py:262:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <HookCaller 'pytest_runtest_call'>
kwargs = {'item': <DoctestItem obspy.io.rg16>}, firstresult = False
def __call__(self, **kwargs: object) -> Any:
"""Call the hook.
Only accepts keyword arguments, which should match the hook
specification.
Returns the result(s) of calling all registered plugins, see
:ref:`calling`.
"""
assert (
not self.is_historic()
), "Cannot directly call a historic hook - use call_historic instead."
self._verify_all_args_are_provided(kwargs)
firstresult = self.spec.opts.get("firstresult", False) if self.spec else False
> return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
../pluggy/_hooks.py:493:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <_pytest.config.PytestPluginManager object at 0x7fe395395df0>
hook_name = 'pytest_runtest_call'
methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/share/miniconda3/envs/test/lib/python3.12/...fca70>>, <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe38c71c3b0>>, ...]
kwargs = {'item': <DoctestItem obspy.io.rg16>}, firstresult = False
def _hookexec(
self,
hook_name: str,
methods: Sequence[HookImpl],
kwargs: Mapping[str, object],
firstresult: bool,
) -> object | list[object]:
# called from all hookcaller instances.
# enable_tracing will set its own wrapping function at self._inner_hookexec
> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
../pluggy/_manager.py:115:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
hook_name = 'pytest_runtest_call'
hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/share/miniconda3/envs/test/lib/python3.12/...fca70>>, <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe38c71c3b0>>, ...]
caller_kwargs = {'item': <DoctestItem obspy.io.rg16>}, firstresult = False
def _multicall(
hook_name: str,
hook_impls: Sequence[HookImpl],
caller_kwargs: Mapping[str, object],
firstresult: bool,
) -> object | list[object]:
"""Execute a call into multiple python functions/methods and return the
result(s).
``caller_kwargs`` comes from HookCaller.__call__().
"""
__tracebackhide__ = True
results: list[object] = []
exception = None
only_new_style_wrappers = True
try: # run impl and wrapper setup functions in a loop
teardowns: list[Teardown] = []
try:
for hook_impl in reversed(hook_impls):
try:
args = [caller_kwargs[argname] for argname in hook_impl.argnames]
except KeyError:
for argname in hook_impl.argnames:
if argname not in caller_kwargs:
raise HookCallError(
f"hook call must provide argument {argname!r}"
)
if hook_impl.hookwrapper:
only_new_style_wrappers = False
try:
# If this cast is not valid, a type error is raised below,
# which is the desired response.
res = hook_impl.function(*args)
wrapper_gen = cast(Generator[None, Result[object], None], res)
next(wrapper_gen) # first yield
teardowns.append((wrapper_gen,))
except StopIteration:
_raise_wrapfail(wrapper_gen, "did not yield")
elif hook_impl.wrapper:
try:
# If this cast is not valid, a type error is raised below,
# which is the desired response.
res = hook_impl.function(*args)
function_gen = cast(Generator[None, object, object], res)
next(function_gen) # first yield
teardowns.append(function_gen)
except StopIteration:
_raise_wrapfail(function_gen, "did not yield")
else:
res = hook_impl.function(*args)
if res is not None:
results.append(res)
if firstresult: # halt further impl calls
break
except BaseException as exc:
exception = exc
finally:
# Fast path - only new-style wrappers, no Result.
if only_new_style_wrappers:
if firstresult: # first result hooks return a single value
result = results[0] if results else None
else:
result = results
# run all wrapper post-yield blocks
for teardown in reversed(teardowns):
try:
if exception is not None:
teardown.throw(exception) # type: ignore[union-attr]
else:
teardown.send(result) # type: ignore[union-attr]
# Following is unreachable for a well behaved hook wrapper.
# Try to force finalizers otherwise postponed till GC action.
# Note: close() may raise if generator handles GeneratorExit.
teardown.close() # type: ignore[union-attr]
except StopIteration as si:
result = si.value
exception = None
continue
except BaseException as e:
exception = e
continue
_raise_wrapfail(teardown, "has second yield") # type: ignore[arg-type]
if exception is not None:
raise exception.with_traceback(exception.__traceback__)
else:
return result
# Slow path - need to support old-style wrappers.
else:
if firstresult: # first result hooks return a single value
outcome: Result[object | list[object]] = Result(
results[0] if results else None, exception
)
else:
outcome = Result(results, exception)
# run all wrapper post-yield blocks
for teardown in reversed(teardowns):
if isinstance(teardown, tuple):
try:
> teardown[0].send(outcome)
../pluggy/_callers.py:130:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
@pytest.hookimpl(hookwrapper=True, tryfirst=True)
def pytest_runtest_call() -> Generator[None, None, None]:
> yield from unraisable_exception_runtest_hook()
../_pytest/unraisableexception.py:88:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
def unraisable_exception_runtest_hook() -> Generator[None, None, None]:
with catch_unraisable_exception() as cm:
yield
if cm.unraisable:
if cm.unraisable.err_msg is not None:
err_msg = cm.unraisable.err_msg
else:
err_msg = "Exception ignored in"
msg = f"{err_msg}: {cm.unraisable.object!r}\n\n"
msg += "".join(
traceback.format_exception(
cm.unraisable.exc_type,
cm.unraisable.exc_value,
cm.unraisable.exc_traceback,
)
)
> warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
E pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
E
E Traceback (most recent call last):
E File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
E is_format = is_format(filename)
E ^^^^^^^^^^^^^^^^^^^
E ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/rg16/tests/data/three_chans_six_traces.fcnt'>
../_pytest/unraisableexception.py:78: PytestUnraisableExceptionWarning
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 341, in from_call
result: Optional[TResult] = func()
^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/runner.py", line 262, in <lambda>
lambda: ihook(item=item, **kwds), when=when, reraise=reraise
^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_hooks.py", line 493, in __call__
return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_manager.py", line 115, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/pluggy/_callers.py", line 130, in _multicall
teardown[0].send(outcome)
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 88, in pytest_runtest_call
yield from unraisable_exception_runtest_hook()
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/_pytest/unraisableexception.py", line 78, in unraisable_exception_runtest_hook
warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))
pytest.PytestUnraisableExceptionWarning: Exception ignored in: <_io.FileIO [closed]>
Traceback (most recent call last):
File "/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/core/util/base.py", line 398, in _read_from_plugin
is_format = is_format(filename)
^^^^^^^^^^^^^^^^^^^
ResourceWarning: unclosed file <_io.BufferedReader name='/usr/share/miniconda3/envs/test/lib/python3.12/site-packages/obspy/io/rg16/tests/data/three_chans_six_traces.fcnt'>

Skipped tests (20)

Submodule Test Skip message
core core/stream.py::obspy.core.stream._is_pickle Skipped: all tests skipped by +SKIP option
core.util core/util/misc.py::obspy.core.util.misc.CatchOutput Skipped: all tests skipped by +SKIP option
core.util core/util/misc.py::obspy.core.util.misc.SuppressOutput Skipped: all tests skipped by +SKIP option
core.util core/util/misc.py::obspy.core.util.misc.TemporaryWorkingDirectory Skipped: all tests skipped by +SKIP option
geodetics geodetics/tests/test_util_geodetics.py::TestUtilGeodetics::test_gps_2_dist_azimuth_bug150 Skipped: Geographiclib installed, not using calc_vincenty_inverse
imaging imaging/tests/test_mopad_script.py::TestMopad::test_script_plot Skipped: Currently broken until further review.
io.ascii io/ascii/core.py::obspy.io.ascii.core._is_slist Skipped: all tests skipped by +SKIP option
io.ascii io/ascii/core.py::obspy.io.ascii.core._is_tspair Skipped: all tests skipped by +SKIP option
io.gcf io/gcf/core.py::obspy.io.gcf.core._write_gcf Skipped: all tests skipped by +SKIP option
io.nordic io/nordic/utils.py::obspy.io.nordic.utils._evmagtonor Skipped: all tests skipped by +SKIP option
io.nordic io/nordic/utils.py::obspy.io.nordic.utils._nortoevmag Skipped: all tests skipped by +SKIP option
io.pde io/pde/mchedr.py::obspy.io.pde.mchedr._is_mchedr Skipped: all tests skipped by +SKIP option
io.quakeml io/quakeml/core.py::obspy.io.quakeml.core._is_quakeml Skipped: all tests skipped by +SKIP option
io.seisan io/seisan/core.py::obspy.io.seisan.core._is_seisan Skipped: all tests skipped by +SKIP option
io.sh io/sh/core.py::obspy.io.sh.core._is_asc Skipped: all tests skipped by +SKIP option
io.sh io/sh/core.py::obspy.io.sh.core._is_q Skipped: all tests skipped by +SKIP option
io.wav io/wav/core.py::obspy.io.wav.core._is_wav Skipped: all tests skipped by +SKIP option
io.y io/y/core.py::obspy.io.y.core._is_y Skipped: all tests skipped by +SKIP option
signal signal/quality_control.py::obspy.signal.quality_control.MSEEDMetadata Skipped: all tests skipped by +SKIP option
signal signal/tests/test_quality_control.py::TestQualityControl::test_schema_validation Skipped: Test requires the jsonschema module

Slowest tests (20)

Runtime Test
81.104s geodetics/tests/test_util_flinnengdahl.py::TestUtilFlinnEngdahl::test_coordinates
16.278s io/xseed/tests/test_core.py::TestCore::test_response_calculation_from_seed_and_xseed
6.423s core/tests/test_event.py::TestEvent::test_plot_farfield_without_quiver_with_maps
5.809s taup/tests/test_velocity_model.py::TestTauPyVelocityModel::test_read_velocity_model
5.800s io/arclink/tests/test_inventory_xml.py::TestArclinkInventory::test_auto_read_arclink_xml
5.250s taup/tests/test_seismic_phase.py::TestTauPySeismicPhase::test_shoot_existing_ray_param
5.067s taup/tests/test_tau.py::TestTauPyModel::test_regional_models
4.876s taup/__init__.py::obspy.taup
4.602s core/tests/test_inventory.py::TestInventoryCartopy::test_location_plot_local
3.008s core/tests/test_inventory.py::TestInventoryCartopy::test_location_plot_global
2.924s taup/tests/test_tau.py::TestTauPyModel::test_vs_java_iasp91
2.493s core/stream.py::obspy.core.stream.read
2.361s core/tests/test_trace.py::TestTrace::test_remove_response_plot
2.054s signal/tests/test_calibration.py::TestCalibration::test_relcal_different_overlaps
2.037s signal/tests/test_rotate.py::TestRotate::test_rotate2zne_against_lqt_different_combinations
1.977s taup/tests/test_seismic_phase.py::TestTauPySeismicPhase::test_many_identically_named_phases
1.917s signal/tests/test_spectral_estimation.py::TestPsd::test_ppsd_restricted_stacks
1.910s signal/tests/test_cross_correlation.py::TestCrossCorrelation::test_correlate_stream_template_and_correlation_detector
1.661s imaging/tests/test_ppsd.py::TestPPSD::test_ppsd_plot
1.486s imaging/tests/test_waveform.py::TestWaveformPlot::test_plot_multiple_traces_10_traces_huge