support/testing: add pytest-asyncio test

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Marcin Niestroj 2020-12-22 17:39:16 +01:00 committed by Thomas Petazzoni
parent 2c4ad5ba24
commit 55a6ff34ba
3 changed files with 53 additions and 0 deletions

View file

@ -1610,8 +1610,10 @@ F: package/python-xmodem/
F: package/rs485conf/
F: package/turbolua/
F: support/testing/tests/package/sample_python_pytest.py
F: support/testing/tests/package/sample_python_pytest_asyncio.py
F: support/testing/tests/package/test_netdata.py
F: support/testing/tests/package/test_python_pytest.py
F: support/testing/tests/package/test_python_pytest_asyncio.py
N: Marcus Folkesson <marcus.folkesson@gmail.com>
F: package/libostree/

View file

@ -0,0 +1,31 @@
import asyncio
import pytest
x = 1
@pytest.fixture()
def f1():
global x
x = 2
yield 15
x = 3
@pytest.mark.asyncio
async def test_1():
assert x == 1
@pytest.mark.asyncio
async def test_2(f1):
assert x == 2
assert f1 == 15
@pytest.mark.asyncio
async def test_3():
assert x == 3
await asyncio.sleep(0.1)
assert x == 3

View file

@ -0,0 +1,20 @@
import os
from tests.package.test_python import TestPythonPackageBase
class TestPythonPy3PytestAsyncio(TestPythonPackageBase):
__test__ = True
config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_PYTEST=y
BR2_PACKAGE_PYTHON_PYTEST_ASYNCIO=y
"""
sample_scripts = ["tests/package/sample_python_pytest_asyncio.py"]
def run_sample_scripts(self):
for script in self.sample_scripts:
cmd = self.interpreter + " -m pytest " + os.path.basename(script)
_, exit_code = self.emulator.run(cmd, timeout=self.timeout)
self.assertEqual(exit_code, 0)