Skip to content

Instantly share code, notes, and snippets.

@r-rmcgibbo
Created March 18, 2021 13:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save r-rmcgibbo/18588e0f341a6cba1abe10db0dd93104 to your computer and use it in GitHub Desktop.
Save r-rmcgibbo/18588e0f341a6cba1abe10db0dd93104 to your computer and use it in GitHub Desktop.
system: x86_64-linux | build_time: 3 seconds | https://github.com/NixOS/nixpkgs/pull/116731
Sourcing python-remove-tests-dir-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing setuptools-build-hook
Using setuptoolsBuildPhase
Using setuptoolsShellHook
Sourcing pip-install-hook
Using pipInstallPhase
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Sourcing python-namespaces-hook
Sourcing setuptools-check-hook
Using setuptoolsCheckPhase
Sourcing pytest-check-hook
Using pytestCheckPhase
Removing setuptoolsCheckPhase
@nix { "action": "setPhase", "phase": "unpackPhase" }
unpacking sources
unpacking source archive /nix/store/0sikjj9dikf4y0qalv81kv4nmx4qyjcc-source
source root is source
setting SOURCE_DATE_EPOCH to timestamp 315619200 of file source/tox.ini
@nix { "action": "setPhase", "phase": "patchPhase" }
patching sources
@nix { "action": "setPhase", "phase": "configurePhase" }
configuring
no configure script, doing nothing
@nix { "action": "setPhase", "phase": "buildPhase" }
building
Executing setuptoolsBuildPhase
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/pyzerproc
copying pyzerproc/cli.py -> build/lib/pyzerproc
copying pyzerproc/__init__.py -> build/lib/pyzerproc
copying pyzerproc/light.py -> build/lib/pyzerproc
copying pyzerproc/discovery.py -> build/lib/pyzerproc
copying pyzerproc/exceptions.py -> build/lib/pyzerproc
running egg_info
creating pyzerproc.egg-info
writing pyzerproc.egg-info/PKG-INFO
writing dependency_links to pyzerproc.egg-info/dependency_links.txt
writing entry points to pyzerproc.egg-info/entry_points.txt
writing requirements to pyzerproc.egg-info/requires.txt
writing top-level names to pyzerproc.egg-info/top_level.txt
writing manifest file 'pyzerproc.egg-info/SOURCES.txt'
reading manifest file 'pyzerproc.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '__pycache__' found under directory '*'
warning: no previously-included files matching '*.py[co]' found under directory '*'
warning: no files found matching 'conf.py' under directory '*.rst'
warning: no files found matching 'Makefile' under directory '*.rst'
warning: no files found matching 'make.bat' under directory '*.rst'
warning: no files found matching '*.jpg' under directory '*.rst'
warning: no files found matching '*.png' under directory '*.rst'
warning: no files found matching '*.gif' under directory '*.rst'
writing manifest file 'pyzerproc.egg-info/SOURCES.txt'
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/pyzerproc
copying build/lib/pyzerproc/cli.py -> build/bdist.linux-x86_64/wheel/pyzerproc
copying build/lib/pyzerproc/__init__.py -> build/bdist.linux-x86_64/wheel/pyzerproc
copying build/lib/pyzerproc/light.py -> build/bdist.linux-x86_64/wheel/pyzerproc
copying build/lib/pyzerproc/discovery.py -> build/bdist.linux-x86_64/wheel/pyzerproc
copying build/lib/pyzerproc/exceptions.py -> build/bdist.linux-x86_64/wheel/pyzerproc
running install_egg_info
Copying pyzerproc.egg-info to build/bdist.linux-x86_64/wheel/pyzerproc-0.4.8-py3.9.egg-info
running install_scripts
adding license file "LICENSE" (matched pattern "LICEN[CS]E*")
creating build/bdist.linux-x86_64/wheel/pyzerproc-0.4.8.dist-info/WHEEL
creating 'dist/pyzerproc-0.4.8-py2.py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it
adding 'pyzerproc/__init__.py'
adding 'pyzerproc/cli.py'
adding 'pyzerproc/discovery.py'
adding 'pyzerproc/exceptions.py'
adding 'pyzerproc/light.py'
adding 'pyzerproc-0.4.8.dist-info/LICENSE'
adding 'pyzerproc-0.4.8.dist-info/METADATA'
adding 'pyzerproc-0.4.8.dist-info/WHEEL'
adding 'pyzerproc-0.4.8.dist-info/entry_points.txt'
adding 'pyzerproc-0.4.8.dist-info/top_level.txt'
adding 'pyzerproc-0.4.8.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
Finished executing setuptoolsBuildPhase
@nix { "action": "setPhase", "phase": "installPhase" }
installing
Executing pipInstallPhase
/build/source/dist /build/source
Processing ./pyzerproc-0.4.8-py2.py3-none-any.whl
Requirement already satisfied: bleak>=0.10.0 in /nix/store/4a1z9aiawx7kv26jc5layszk2hggl7kk-python3.9-bleak-0.11.0/lib/python3.9/site-packages (from pyzerproc==0.4.8) (0.11.0)
Requirement already satisfied: Click>=7.0 in /nix/store/5nymwxd7rr8hb5h50m1z6cs7flpgvima-python3.9-click-7.1.2/lib/python3.9/site-packages (from pyzerproc==0.4.8) (7.1.2)
Requirement already satisfied: dbus-next in /nix/store/qd1vxscfsiil95j6vdaymkpib7n65snv-python3.9-dbus-next-0.2.2/lib/python3.9/site-packages (from bleak>=0.10.0->pyzerproc==0.4.8) (0.2.2)
Installing collected packages: pyzerproc
Successfully installed pyzerproc-0.4.8
/build/source
Finished executing pipInstallPhase
@nix { "action": "setPhase", "phase": "fixupPhase" }
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/1z5mw5mlsiav84jrr0cfphi1j32wjd7k-python3.9-pyzerproc-0.4.8
strip is /nix/store/cp1sa3xxvl71cypiinw2c62i5s33chlr-binutils-2.35.1/bin/strip
stripping (with command strip and flags -S) in /nix/store/1z5mw5mlsiav84jrr0cfphi1j32wjd7k-python3.9-pyzerproc-0.4.8/lib /nix/store/1z5mw5mlsiav84jrr0cfphi1j32wjd7k-python3.9-pyzerproc-0.4.8/bin
patching script interpreter paths in /nix/store/1z5mw5mlsiav84jrr0cfphi1j32wjd7k-python3.9-pyzerproc-0.4.8
checking for references to /build/ in /nix/store/1z5mw5mlsiav84jrr0cfphi1j32wjd7k-python3.9-pyzerproc-0.4.8...
Rewriting #!/nix/store/p4hb5lmji1djg5k074yngk7vai92nx6n-python3-3.9.2/bin/python3.9 to #!/nix/store/p4hb5lmji1djg5k074yngk7vai92nx6n-python3-3.9.2
wrapping `/nix/store/1z5mw5mlsiav84jrr0cfphi1j32wjd7k-python3.9-pyzerproc-0.4.8/bin/pyzerproc'...
Executing pythonRemoveTestsDir
Finished executing pythonRemoveTestsDir
@nix { "action": "setPhase", "phase": "installCheckPhase" }
running install tests
no Makefile or custom installCheckPhase, doing nothing
@nix { "action": "setPhase", "phase": "pythonCatchConflictsPhase" }
pythonCatchConflictsPhase
@nix { "action": "setPhase", "phase": "pythonRemoveBinBytecodePhase" }
pythonRemoveBinBytecodePhase
@nix { "action": "setPhase", "phase": "pythonImportsCheckPhase" }
pythonImportsCheckPhase
Executing pythonImportsCheckPhase
Check whether the following modules can be imported: pyzerproc
@nix { "action": "setPhase", "phase": "pytestCheckPhase" }
pytestCheckPhase
Executing pytestCheckPhase
============================= test session starts ==============================
platform linux -- Python 3.9.2, pytest-6.1.2, py-1.9.0, pluggy-0.13.1
rootdir: /build/source, configfile: setup.cfg
plugins: asyncio-0.14.0, mock-3.5.1
collecting ...
collected 12 items
tests/test_discovery.py .. [ 16%]
tests/test_light.py ...F...... [100%]
=================================== FAILURES ===================================
______________________________ test_is_connected _______________________________
self = <pyzerproc.light.Light object at 0x7ffff5db46a0>, timeout = None
args = ()
async def is_connected(self, *args, timeout=None):
"""Returns true if the light is connected."""
try:
> return await asyncio.wait_for(
self._client.is_connected(),
self._default_timeout if timeout is None else timeout)
pyzerproc/light.py:44:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
fut = False, timeout = 5
async def wait_for(fut, timeout, *, loop=None):
"""Wait for the single Future or coroutine to complete, with timeout.
Coroutine will be wrapped in Task.
Returns result of the Future or coroutine. When a timeout occurs,
it cancels the task and raises TimeoutError. To avoid the task
cancellation, wrap it in shield().
If the wait is cancelled, the task is also cancelled.
This function is a coroutine.
"""
if loop is None:
loop = events.get_running_loop()
else:
warnings.warn("The loop argument is deprecated since Python 3.8, "
"and scheduled for removal in Python 3.10.",
DeprecationWarning, stacklevel=2)
if timeout is None:
return await fut
if timeout <= 0:
fut = ensure_future(fut, loop=loop)
if fut.done():
return fut.result()
await _cancel_and_wait(fut, loop=loop)
try:
fut.result()
except exceptions.CancelledError as exc:
raise exceptions.TimeoutError() from exc
else:
raise exceptions.TimeoutError()
waiter = loop.create_future()
timeout_handle = loop.call_later(timeout, _release_waiter, waiter)
cb = functools.partial(_release_waiter, waiter)
> fut = ensure_future(fut, loop=loop)
/nix/store/p4hb5lmji1djg5k074yngk7vai92nx6n-python3-3.9.2/lib/python3.9/asyncio/tasks.py:462:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
coro_or_future = False
def ensure_future(coro_or_future, *, loop=None):
"""Wrap a coroutine or an awaitable in a future.
If the argument is a Future, it is returned directly.
"""
if coroutines.iscoroutine(coro_or_future):
if loop is None:
loop = events.get_event_loop()
task = loop.create_task(coro_or_future)
if task._source_traceback:
del task._source_traceback[-1]
return task
elif futures.isfuture(coro_or_future):
if loop is not None and loop is not futures._get_loop(coro_or_future):
raise ValueError('The future belongs to a different loop than '
'the one specified as the loop argument')
return coro_or_future
elif inspect.isawaitable(coro_or_future):
return ensure_future(_wrap_awaitable(coro_or_future), loop=loop)
else:
> raise TypeError('An asyncio.Future, a coroutine or an awaitable is '
'required')
E TypeError: An asyncio.Future, a coroutine or an awaitable is required
/nix/store/p4hb5lmji1djg5k074yngk7vai92nx6n-python3-3.9.2/lib/python3.9/asyncio/tasks.py:679: TypeError
The above exception was the direct cause of the following exception:
client = <MagicMock name='BleakClient()' spec='MagicMock' id='140737318808064'>
@pytest.mark.asyncio
async def test_is_connected(client):
"""Test turning on the light."""
light = Light("00:11:22")
await light.connect()
client.is_connected.side_effect = None
client.is_connected.return_value = False
> assert not await light.is_connected()
tests/test_light.py:65:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <pyzerproc.light.Light object at 0x7ffff5db46a0>, timeout = None
args = ()
async def is_connected(self, *args, timeout=None):
"""Returns true if the light is connected."""
try:
return await asyncio.wait_for(
self._client.is_connected(),
self._default_timeout if timeout is None else timeout)
except asyncio.TimeoutError:
return False
except Exception as ex:
> raise ZerprocException() from ex
E pyzerproc.exceptions.ZerprocException
pyzerproc/light.py:50: ZerprocException
=============================== warnings summary ===============================
../../nix/store/jy6rhkqcfvxyj4bpi2ncc7bbv8vsfp9i-python3.9-pytest-6.1.2/lib/python3.9/site-packages/_pytest/config/__init__.py:1230
/nix/store/jy6rhkqcfvxyj4bpi2ncc7bbv8vsfp9i-python3.9-pytest-6.1.2/lib/python3.9/site-packages/_pytest/config/__init__.py:1230: PytestConfigWarning: Unknown config option: env
self._warn_or_fail_if_strict("Unknown config option: {}\n".format(key))
-- Docs: https://docs.pytest.org/en/stable/warnings.html
=========================== short test summary info ============================
FAILED tests/test_light.py::test_is_connected - pyzerproc.exceptions.ZerprocE...
=================== 1 failed, 11 passed, 1 warning in 1.02s ====================
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment