mirror of
https://git.yoctoproject.org/poky
synced 2026-04-26 09:32:14 +02:00
classes/ptest-python-pytest: add a new class to consolidate pytest ptest functionality
A large number of python packages leverage the pytest unit test
framework for their ptest functionality. Currently, many of the tests
have duplicate code for:
1. Installing pytest files
2. Declaring ptest dependencies
3. Script for executing tests (run-ptes)
To simplify adding common pytest based ptests, added a new class
enabling base functionality. Users can also override the location of
the pytest files in addition to using their own version of run-ptest
[RP: Minor whitespace tweaks to shell function and missing prepend space]
(From OE-Core rev: d66009e608256d42b2d6573d4614a99eb13fd3f1)
Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
5375cd0318
commit
095beae008
31
meta/classes-recipe/ptest-python-pytest.bbclass
Normal file
31
meta/classes-recipe/ptest-python-pytest.bbclass
Normal file
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# Copyright OpenEmbedded Contributors
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
inherit ptest
|
||||
|
||||
FILESEXTRAPATHS:prepend := "${COREBASE}/meta/files:"
|
||||
|
||||
SRC_URI:append = "\
|
||||
file://ptest-python-pytest/run-ptest \
|
||||
"
|
||||
|
||||
# Overridable configuration for the directory within the source tree
|
||||
# containing the pytest files
|
||||
PTEST_PYTEST_DIR ?= "tests"
|
||||
|
||||
do_install_ptest() {
|
||||
if [ ! -f ${D}${PTEST_PATH}/run-ptest ]; then
|
||||
install -m 0755 ${UNPACKDIR}/ptest-python-pytest/run-ptest ${D}${PTEST_PATH}
|
||||
fi
|
||||
if [ -d "${S}/${PTEST_PYTEST_DIR}" ]; then
|
||||
install -d ${D}${PTEST_PATH}/${PTEST_PYTEST_DIR}
|
||||
cp -rf ${S}/${PTEST_PYTEST_DIR}/* ${D}${PTEST_PATH}/${PTEST_PYTEST_DIR}/
|
||||
fi
|
||||
}
|
||||
|
||||
FILES:${PN}-ptest:prepend = "${PTEST_PATH}/*"
|
||||
|
||||
RDEPENDS:${PN}-ptest:prepend = "python3-pytest python3-unittest-automake-output "
|
||||
3
meta/files/ptest-python-pytest/run-ptest
Executable file
3
meta/files/ptest-python-pytest/run-ptest
Executable file
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
pytest --automake
|
||||
Reference in New Issue
Block a user