Hi Ross, Ross Burton <[email protected]> escreveu no dia segunda, 21/02/2022 à(s) 14:24:
> There are *so many* limitations of qemu-user I'm not sure this is > actually useful. > > (speaking as someone who tried this with Python a while ago). > Can you please point me to your previous work if it is public, I would like to see what has already been done in this regard. > What recipes has this successfully worked on? > It works on pulseaudio that has only one test and some others that I don't remember now, but the tests run successfully only when there are few. I use it extensively with gstreamer and the failures is mainly because of files that are not found inside the qemu user mode. I think that this feature is useful for some other people, it helps me a lot in debug some tests in gstreamer. Anyway the feature is disabled by default so for sure it will not introduce any regression on OE-core. Jose > > Ross > > On Mon, 21 Feb 2022 at 08:51, Jose Quaresma <[email protected]> > wrote: > > > > The generic exe_wrapper introcuced in 40349dc5 can be used to run the > > meson tests when build the receipe. This patch add the meson_test task > > on the meson bbclass that adds this possibility. > > > > The exe_wrapper will run using the qemu usermode and because of that it > > has some limitations, so don't expect the same results when it runs > > natively on target. > > > > Running the tests at build time is upstream way for testing but is not > > possible in OE as we always croos-compile. This can be useful in some > > integration processes and for debuging and it adds the possibility to > > run the test in an interactive way using the devtool build for example. > > > > There are two variable for that: > > MESON_QEMU_WRAPPER_TEST_ENABLED: this enables the test when it's "1" > > EXTRA_OEMESON_TEST: this is used to add extra args > > > > Some results when using this patch in the bigest meson project > > on OE-core are the folloing: > > > > cat <<'EOF' >>conf/local.conf > > MESON_QEMU_WRAPPER_TEST_ENABLED:pn-systemd-boot = "1" > > EOF > > > > bitbake -c do_meson_test -v systemd-boot > > > > Ok: 821 > > Expected Fail: 0 > > Fail: 95 > > Unexpected Pass: 0 > > Skipped: 33 > > Timeout: 0 > > > > cat <<'EOF' >>conf/local.conf > > MESON_QEMU_WRAPPER_TEST_ENABLED:pn-glib-2.0 = "1" > > EOF > > > > bitbake -c do_meson_test -v glib-2.0 > > > > Ok: 197 > > Expected Fail: 0 > > Fail: 76 > > Unexpected Pass: 0 > > Skipped: 0 > > Timeout: 2 > > > > cat <<'EOF' >>conf/local.conf > > MESON_QEMU_WRAPPER_TEST_ENABLED:pn-gstreamer1.0 = "1" > > EOF > > > > bitbake -c do_meson_test -v gstreamer1.0 > > > > Ok: 95 > > Expected Fail: 0 > > Fail: 10 > > Unexpected Pass: 0 > > Skipped: 1 > > Timeout: 0 > > > > Signed-off-by: Jose Quaresma <[email protected]> > > --- > > meta/classes/meson.bbclass | 16 ++++++++++++++++ > > 1 file changed, 16 insertions(+) > > > > diff --git a/meta/classes/meson.bbclass b/meta/classes/meson.bbclass > > index 0bfe945811..020a59a3c0 100644 > > --- a/meta/classes/meson.bbclass > > +++ b/meta/classes/meson.bbclass > > @@ -179,3 +179,19 @@ meson_do_install() { > > } > > > > EXPORT_FUNCTIONS do_configure do_compile do_install > > + > > +EXTRA_OEMESON_TEST ?= "" > > + > > +do_meson_test() { > > + bbwarn "don't expect the same results when it runs natively as it > will run in qemu usermode (that has its own limitations)" > > + meson test -C ${B} ${EXTRA_OEMESON_TEST} > > +} > > +do_meson_test[vardeps] += "EXTRA_OEMESON_TEST" > > + > > +MESON_QEMU_WRAPPER_RUNTEST = "" > > +MESON_QEMU_WRAPPER_RUNTEST:class-target = > "${@d.getVar('MESON_QEMU_WRAPPER_TEST_ENABLED') == '1' and > d.getVar('EXEWRAPPER_ENABLED') == 'True'}" > > + > > +python() { > > + if d.getVar('MESON_QEMU_WRAPPER_RUNTEST') == 'True': > > + bb.build.addtask('meson_test', 'do_install', 'do_compile', d) > > +} > > -- > > 2.35.1 > > > > > > > > > -- Best regards, José Quaresma
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#162055): https://lists.openembedded.org/g/openembedded-core/message/162055 Mute This Topic: https://lists.openembedded.org/mt/89289917/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
