summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/sdk/cases
Commit message (Collapse)AuthorAgeFilesLines
* oeqa/sdk/autotools: verify that configure is using the correct hostRoss Burton2025-05-121-0/+6
| | | | | | | | | | Search config.log for the correct host_alias assignment to verify that configure has correctly identified the host system. (From OE-Core rev: ade66073a1c89918f849eb2932c05342e8f3ab4f) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/maturin: no need for a setupClass, merge code into testRoss Burton2025-05-121-14/+11
| | | | | | | | | | There's no need to copy files inside setUpClass() when there's only one test function that uses it. Just do all of the test inside the test. (From OE-Core rev: 5474677b21f2f4069f355abdc600483c42d0b0b3) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/maturin: be less picky in the list_python testRoss Burton2025-05-121-10/+8
| | | | | | | | | | | | | | | | | | The test assumed that maturin would only find a single Python binary, in /usr/bin/python3*. However in eSDKs with buildtools a Python is shipped with the SDK, so the test failed. Generalise the test so that it runs python3 and obtains its path and version, and then verifies that path and and version are found by Maturin. This means we're not assuming a single Python, or the paths, or that the Python is CPython. (From OE-Core rev: ae9b5dae77ef140422fcf71d239ca028c9208447) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/meson: add check that meson has detected the target correctlyRoss Burton2025-05-121-0/+9
| | | | | | | | | | | Use 'meson introspect' to dump JSON describing the build configuration and validate that the target architectures and cross-compiler is correctly set. (From OE-Core rev: 1c84361829921e91d782b189e2bde818a2d1491c) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/gtk3: build libhandy instead of galculatorRoss Burton2025-05-121-26/+20
| | | | | | | | | | | | | | | | galculator hasn't been touched for a decade now[1] and fails to compile under GCC 15. Switch to building libhandy, which is the GTK+3 precursor to libadwaita in the Gnome stack. Whilst this is in low-maintainence mode, will be updated if it breaks. [1] https://github.com/galculator/galculator/ (From OE-Core rev: ff6fa71eb0511d8594c4416a37d75a85470ff9c6) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/meson: generalise test caseRoss Burton2025-05-121-17/+34
| | | | | | | | | | | | | | Refactor this test case so the generic "build a meson project" code is separated out and can be reused. Also currently meson inside eSDKs only works with fully populated eSDKs, but our testing uses minimal eSDKS, so skip the test if the eSDK is a minimal build. A bug has been filed to resolve this. (From OE-Core rev: 575e0bf52db0467d88af4b5fe467b682f10ca62a) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/kmod: skip test in eSDKsRoss Burton2025-05-121-0/+4
| | | | | | | | | | | At the moment we can't run this test inside an eSDK as it needs the kernel-devsrc recipe to be present. Skip the test until this has been resolved. (From OE-Core rev: f83beee6e63d25ef2b17618a85f9ad6ca0898600) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: use ensure_*_package helpersRoss Burton2025-05-127-38/+11
| | | | | | | | | | | | Clean up lots of dependency checking code by using the new helpers. This means that a lot of tests that were previously skipped inside the eSDK testing on the autobuilder are now executed, and fail. (From OE-Core rev: 11277efd057685558a744e98082b5709e849dd2a) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: add simple test that the manifests are not emptyRoss Burton2025-05-121-0/+26
| | | | | | | | | | | | | Simple test to sanity check that the generated SDK manifest was parsed correctly and isn't empty. This test is complicated by the fact that minimal eSDKs without a toolchain do in fact have an empty manifest, so also check for that. (From OE-Core rev: 43288b19e93f0c07b347d6e5d6f7f10e96219f96) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: Build cpio with C17 stdKhem Raj2025-03-241-2/+2
| | | | | | | | | | | | cpio is not yet buildable with C23 standard which is default with GCC 15, therefore ensure to apply needed bandage to keep it compiling in C17 mode even with GCC 15 (From OE-Core rev: 0c637099887f1be421c8e1203f99631a1e040150) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/rust: Add a crate that needs the target and SDK host toolchainSean Nyekjaer2025-02-011-0/+2
| | | | | | | | | | Expand the QA tests, to test that the target and SDK host toolchains works. (From OE-Core rev: ed915e40d24a0a8b9d78374b297a9cd8090c6f9c) Signed-off-by: Sean Nyekjaer <sean@geanix.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa sdk cases: Skip SDK test cases when TCLIBC is newlibMark Hatle2024-07-266-0/+28
| | | | | | | | | | | Newlib generally requires additional components to function. Skip the cases where newlib is known to not work. (From OE-Core rev: b9934755554e40d9980b90c3d541f4c702203561) Signed-off-by: Mark Hatle <mark.hatle@amd.com> Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: add out-of-tree kernel module building testRoss Burton2024-07-181-0/+41
| | | | | | | | | | | | | | Validate that out-of-tree kernel module building using kernel-devsrc works as expected. This test uses cryptodev-linux as a idiomatic out of tree module. As the latest release doesn't actually build with kernel 6.7+, use the same commit that our recipe uses. (From OE-Core rev: 8a1c1054815ecc0302c62134f293b8e1f959798a) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: remove unused imports from test casesRoss Burton2024-05-225-5/+2
| | | | | | | | | Remove redundant imports. (From OE-Core rev: b6223259458578d8b967aff11d3263dfed496708) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: rename test casesRoss Burton2024-05-225-7/+7
| | | | | | | | | | | Instead of having a test called eg "assimp", rename it to "cmake" as the point of the test is to verify that CMake works. This should make it clearer what the tests are actually exercising. (From OE-Core rev: ccf7fdc0e5b6df218b319f972cd5ba142c06c243) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/assimp: Upgrade and fix for gcc 14Richard Purdie2024-05-211-4/+4
| | | | | | | | | To enable this test to work with gcc 14, pass the option to make warnings non-fatal. Also upgrade to version 5.4.1 from 5.3.1. (From OE-Core rev: c3df6287ae26dc9d7f11eb7e26fdbcaefe4dfead) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildcpio.py: Switch to using cpio-2.15Khem Raj2024-02-081-4/+3
| | | | | | | | | | | | | | | | | This helps in getting it building with newer architectures like riscv32 since it has upgraded gnulib over 2.14 which has the needed fixes. Drop the -fno-common workaround as it is already applied to cpio drop --disable-maintainer-mode Fixes configure: WARNING: unrecognized options: --disable-maintainer-mode (From OE-Core rev: 18d303497089d3a7a893ee0eec5b0f0c78cca06d) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sdk/assimp.py: Fix build on 32bit arches with 64bit time_tKhem Raj2024-02-051-7/+7
| | | | | | | | | | | | | | | | | | | | This testcase does not work properly with 32bit systems as it houses an older version of zlib which needs to be patched to work with 32bit systems with 64bit time_t e.g. mips o32. Apply a needed patch via sed logic to fix this issue. Enable bundled zlib in build, which means we do not require zlib to be available in SDK and it can be built for more variety of images. Upgrade the testcase to use 5.3.1 release of assimp and add cmake option to enable bundled zlib explicitly. (From OE-Core rev: 3c922fb61aa4f3bbb5c4ef35639acdf263c4313c) Signed-off-by: Khem Raj <raj.khem@gmail.com> Cc: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: add "maturin develop" SDK test caseTim Orling2023-12-171-1/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'maturin develop' first checks that a virtual environment has been created, which is a good test for our python3 SDK environment ;) Source for guessing-game lifted from https://www.maturin.rs/tutorial The test case is expected to fetch any necessary crates, build a development version of the crate and package it as a wheel Needs at a minimum the following in e.g. local.conf: TOOLCHAIN_HOST_TASK:append = " nativesdk-python3-maturin" SDK_INCLUDE_TOOLCHAIN = '1' SDK_TOOLCHAIN_LANGS += 'rust' The output of 'maturin develop' should be something like: ... 🔗 Found pyo3 bindings with abi3 support for Python ≥ 3.8 🐍 Not using a specific python interpreter 📡 Using build options features from pyproject.toml ... Compiling guessing-game v0.1.0 (/path/to/guessing-game) Finished dev [unoptimized + debuginfo] target(s) in 7.14s 📦 Built wheel for abi3 Python ≥ 3.8 to /path/to/tmpdir/guessing_game-0.1.0-cp38-abi3-linux_x86_64.whl 🛠 Installed guessing-game-0.1.0 (From OE-Core rev: 5265dd0b102cd7f3c6bb2ae1b18e9f625b834b39) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: add simple 'maturin' SDK (testsdk) test caseTim Orling2023-12-171-0/+33
| | | | | | | | | | | | | | | | | | | We expect 'maturin' will be used in SDKs, so it makes sense to also test it in the testsdk environment. To run this test case, you can add the following to local.conf: TOOLCHAIN_HOST_TASK:append = " nativesdk-python3-maturin" And then build and test the SDK: bitbake -c populate_sdk core-image-full-cmdline bitbake -c testsdk core-image-full-cmdline You can substitute a different image recipe for "core-image-full-cmdline" (From OE-Core rev: 7ceff48625d01a0e60eb761a9a668d0c942cda89) Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/rust: Add build and run test of rust binary with SDK hostSean Nyekjaer2023-10-191-0/+22
| | | | | | | | | | | Add a QA test to the SDK to test that a basic cargo build works for the SDK host. (From OE-Core rev: 7f05760debd3aeb69c3294f3ceb92d4f1aceec1f) Signed-off-by: Sean Nyekjaer <sean@geanix.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: Use 2.14 release of cpio instead of 2.13Khem Raj2023-09-261-2/+2
| | | | | | | | | 2.13 may not be buildable with latest compilers without patching (From OE-Core rev: 406a33f896accc35a9cb6ab156f1e0f42dda67d8) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/assimp: run only when zlib is in the SDKAlexander Kanavin2023-05-051-0/+3
| | | | | | | | | | | | | | Otherwise assimp will silently fall back to a vendored copy of zlib which will fail with -D_TIME_BITS=64 due to https://github.com/madler/zlib/pull/764 This was exposed by multilib mips core-image-minimal SDKs, where the default 64 bit sysroot has zlib, but 32 bit sysroot does not. (From OE-Core rev: c0fb603c9e26e91388320c02842b42cc7b091d6c) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: Improve Meson testTom Hochstein2023-03-061-1/+1
| | | | | | | | | | | | | | | The meson wrapper setup command detection is broken in the case of an implicit setup command with an option with a space-separated argument, but the test was not detecting it since the case was not covered. Add the option `--warnlevel 1` to the meson command line to cover this case. (From OE-Core rev: 54e9ee8a0c6c9fc89cbb743f0e4fc18607d503cf) Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib: Add copyright statements to files without oneRichard Purdie2022-08-129-0/+18
| | | | | | | | | Where there isn't a copyright statement, add one to make it explicit. Also add license identifiers as MIT if there isn't one. (From OE-Core rev: bb731d1f3d2a1d50ec0aed864dbca54cf795b040) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/rust: Fix file deletion for multilib SDKsRichard Purdie2022-08-011-2/+2
| | | | | | | | | | We need to use shutil.rmtree here since removedirs() only covers directories. Make the exception for specific too to make errors easier to catch. (From OE-Core rev: 9d2a661e46123a2292f7887658e6fa54923dbcc0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: allow epoxy/galculator tests to run in esdk and direct yocto buildsAlexander Kanavin2022-07-282-2/+4
| | | | | | | | | | Other tests already have similar tweaks. (From OE-Core rev: 3134d19ba15bb783389c40617d5e2b568c7cd81c) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: Add basic rust cargo testOtavio Salvador2022-07-281-0/+33
| | | | | | | | | | | Add a QA test to the SDK to test that a basic cargo build works. [RP: Tweaked to work for multilibs and updated to match toolchain changes] (From OE-Core rev: d0cfe587bc897e79ef01805cc9a42fbca28c883c) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: drop the nativesdk-python 2.x testAlexander Kanavin2022-06-251-11/+0
| | | | | | | | | | Python 2.x has been EOL for a while, and so this test never runs. (From OE-Core rev: b687627e9cffb8123c156413f55ea1929f1a7831) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cases/buildepoxy.py: fix typoChen Qi2022-04-261-1/+1
| | | | | | | | (From OE-Core rev: 3a9b6e71d1e7e8e2ebc0ed047841e36f09300387) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: sdk: Capture stderr outputJoshua Watt2020-09-025-5/+5
| | | | | | | | | | | Redirect stderr to stdout when running subcommands while doing the SDK tests. The tests will show stdout when CalledProcessError is raised, but any output to stderr was lost. (From OE-Core rev: 7cb4e9ab8c1596281060e94a216966060103956e) Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildgalculator: Patch to fix build with -fno-commonKhem Raj2020-08-181-1/+1
| | | | | | | | | | We need to apply a patch to galculator for it to build with gcc-10+ Remove double definition of 'prefs' variable (From OE-Core rev: 93a62e6b35d1a6ed3c678f8e27508dd0cdbdbbe4) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildcpio.py: Apply patch to fix build with -fno-commonKhem Raj2020-08-181-0/+1
| | | | | | | | | | | This sed expression implements the needed patch to fix compilation with -fno-common, hopefully this patch will get included in 2.14 release and we can remove this operation (From OE-Core rev: 77b2e00c37c661a502bb47fcbbeb2e71aca5b9ce) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: Use --disable-maintainer-mode configure optionKhem Raj2020-02-141-1/+1
| | | | | | | | | | | | | | | | | since the versions of autotools might differ on target and build host, plus difference in timestamps for configure and system can result in reconfigure lets avoid that by disabling maintainer mode Avoids error: newly created file is older than distributed files! [YOCTO #13779] Suggested-by: Andre McCurdy <armccurdy@gmail.com> (From OE-Core rev: 3dc4e27e7633ce3ca6b9647810d0996bdee48771) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: Use cpio 2.13 as testcaseKhem Raj2020-02-081-2/+2
| | | | | | | | | | | | | | | | | | | | | cpio 2.12 was released in 2015 and might have used older autotools which could result in errors like https://bugzilla.yoctoproject.org/show_bug.cgi?id=13779 Bumping to 2.13 will help in matching the tool versions A good change on top would be to run aclocal -I .; autoheader; autoconf; automake --add-missing -c before running configure step perhaps [YOCTO #13779] (From OE-Core rev: 84eb1dc4fe8a11cd2d05b703070a6fb6de05b873) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: improve Meson testRoss Burton2019-10-091-1/+3
| | | | | | | | | Verify that the build inside the SDK is detected as a cross compilation. (From OE-Core rev: 3dc75ab44c23c4ff26502b96abded3c1c0b94e38) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta/lib+scripts: Convert to SPDX license headersRichard Purdie2019-05-098-0/+32
| | | | | | | | | | | | | | | | | | | | | | | This adds SPDX license headers in place of the wide assortment of things currently in our script headers. We default to GPL-2.0-only except for the oeqa code where it was clearly submitted and marked as MIT on the most part or some scripts which had the "or later" GPL versioning. The patch also drops other obsolete bits of file headers where they were encoountered such as editor modelines, obsolete maintainer information or the phrase "All rights reserved" which is now obsolete and not required in copyright headers (in this case its actually confusing for licensing as all rights were not reserved). More work is needed for OE-Core but this takes care of the bulk of the scripts and meta/lib directories. The top level LICENSE files are tweaked to match the new structure and the SPDX naming. (From OE-Core rev: f8c9c511b5f1b7dbd45b77f345cb6c048ae6763e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: add test to exercise MesonRoss Burton2019-01-081-0/+35
| | | | | | | | | (From OE-Core rev: 29359493e391d68a5a6b4fa4d09ffdc1fe6db620) (From OE-Core rev: 237ed166f48b0e32684a5307d3b47b9485238ed9) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/assimp: cleanupRoss Burton2019-01-081-14/+16
| | | | | | | | | Unify style with the other tests. (From OE-Core rev: 545cde27b13f9d68211fd3a671182203ac47756d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/cases: clean up DL_DIR handlingRoss Burton2019-01-084-8/+4
| | | | | | | (From OE-Core rev: f56c62b9feacd6e08fee3507185261ab3f0180e0) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: rewrite cpio testRoss Burton2018-12-131-27/+22
| | | | | | | | | | | Don't use the helper class as it gets in the way more than it helps, exercise the out-of-tree paths, and verify the installed files match the expected architecture. (From OE-Core rev: 6d666b0413336de2e556b2722c5be97ae5cd40ad) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: rewrite lzip testRoss Burton2018-12-131-33/+28
| | | | | | | | | | | Don't use the helper class as it gets in the way more than it helps, exercise the out-of-tree paths, and verify the installed files match the expected architecture. (From OE-Core rev: 920ae8c6537c2469f21ab9439587fd094ecc40f6) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: clean up galculator testRoss Burton2018-12-131-7/+4
| | | | | | | | | | Drop redundant imports and variables, and use os.makedirs() instead of bb.utils.mkdirhier(). (From OE-Core rev: 2de9b1e611e5047afb540f98756994925c22e446) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: show output if run() failsRoss Burton2018-12-135-18/+23
| | | | | | | | | | | Use oeqa.utils.subprocesstweak to monkey-patch the subprocess exception so that any output is shown, and remove any explicit try/catch handling that would have hidden this. (From OE-Core rev: 55964b33b561397287779ee474170790dfd03e85) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/galculator: rewrite to use new helpersRoss Burton2018-12-081-20/+27
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/python: fix version typoRoss Burton2018-12-081-1/+1
| | | | | | | (From OE-Core rev: 581b43d7b3566624e6b17d516755d8e7a5142ebf) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/assimp: use helpersRoss Burton2018-12-081-28/+1
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk/python: add Python 2 and fix detectionRoss Burton2018-12-031-3/+17
| | | | | | | | | | | Add a Python 2 form to exercise that if present, and fix the setUp() so it actually looks for a package that exists (nativesdk-python3 is a virtual package, the interpretter is in nativesdk-python3-core). (From OE-Core rev: d286c2ad3eec24978557e16a8fa599476791109f) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testsdk: fix skipped testcase output "UNKNOWN" status while multiprocess ↵Hongxu Jia2018-11-146-8/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | execution Usually skipped testcase output "SKIPPED" [snip serial execution] |RESULTS - buildgalculator.GalculatorTest.test_galculator - Testcase -1: SKIPPED (0.01s) |RESULTS - python.PythonTest.test_python3 - Testcase -1: SKIPPED (0.01s) [snip serial execution] But if enable multiprocess execution, skipped testcase output "UNKNOWN" status [snip enable multiprocess execution] |RESULTS - buildgalculator.GalculatorTest.test_galculator - Testcase -1: UNKNOWN |RESULTS - python.PythonTest.test_python3 - Testcase -1: UNKNOWN [snip enable multiprocess execution] Here is my investigation: There is a class pairs TestProtocolClient and TestProtocolServer provided by python3-subunit. The TestProtocolClient generates a subunit stream of TestResult from a test run, and TestProtocolServer parses the stream of subunit TestResult. The class ProtocolTestCase is a unittest.TestCase adapter and it uses TestProtocolServer to parse the stream of subunit TestResult. In Yocto testsdk, it forks multiple processes to execute testcases and use TestProtocolClient to generate TestResult stream; and then it creates multiple threads to use ProtocolTestCase to parse stream of subunit TestResult through pipe; finally it passes multiple ProtocolTestCase as TestCase instance to main process and output status result. The problem point is TestProtocolServer parses `skip:' directive after reading a `test:' directive. Without `test:' directive, `skip:' directive will be ignored. All above requires SkipTest should be raised inside a test method rather than setUpClass method. Throwing SkipTest inside setUp works correctly (From OE-Core rev: 4828a88556d59e4d06933164c2ebeb9361b7450e) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/sdk: fixes related to hasPackage semanticsChen Qi2018-09-043-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | The current _hasPackage does a regex match when checking for the existence of packages. This will sometimes result in unexpected result. For example, the condition hasTargetPackage('gcc') is likely to be always true as it matches libgcc1. For most of the time, we should do exact match instead of regex match. So change _hasPackage function to do that. For the current sdk test cases, the only place that needs regex match is '^gcc-'. This is because there's no easy way to get multilib tune arch (e.g. i686) from testdata.json file. Besides, packagegroup-cross-canadian-xxx and gcc-xxx should be check in host manifest instead of the target one. So fix to use hasHostPackage. Also, as we are doing exact match, there's no need to use r'gtk\+3', just 'gtk+3' is enough. (From OE-Core rev: 595e9922cdbacf84cf35cc83f0d03cace042e302) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>