[OE-core] [PATCH V3] dbus: fix ptest failure

Changqing Li changqing.li at windriver.com
Mon Jan 21 07:47:31 UTC 2019


Hi, Richard

Could you help to review this patch? Thanks.

On 11/5/18 11:28 AM, changqing.li at windriver.com wrote:
> From: Changqing Li <changqing.li at windriver.com>
>
> 1. since one bug in run-ptest, testcase test-bus have never been
> actually run (althrough it's result is PASS).
>
> After commit 0828850, test-bus can actually run but it
> did not install:
>    test-service, test-shell-service, test-segfault, and
>    dbus-daemon-launch-helper-test
> Add the configure flag:
>    --enable-embedded-tests
> to generate binary dbus-daemon-launch-helper-test, then install
> them so that test-bus will now pass.
>
> 2. fix testcase test-dbus-daemon failed
> we enable --enable-verbose-mode in recipe dbus-test, and don't
> enable it in recipe dbus. This will make below test code get
> unexpect result of have_verbose and assert.
> disable --enable-verbose-mode for recipe dbus-test to fix it.
>
>   #ifdef DBUS_ENABLE_STATS
>    g_assert_true (have_stats);
>   #else
>    g_assert_false (have_stats);
>   #endif
>
> Signed-off-by: Changqing Li <changqing.li at windriver.com>
> ---
>   meta/recipes-core/dbus/dbus-test_1.12.10.bb | 12 +++++++++---
>   meta/recipes-core/dbus/dbus/run-ptest       | 16 ++++++++++++----
>   2 files changed, 21 insertions(+), 7 deletions(-)
>
> diff --git a/meta/recipes-core/dbus/dbus-test_1.12.10.bb b/meta/recipes-core/dbus/dbus-test_1.12.10.bb
> index 25b9395..ec9b9e2 100644
> --- a/meta/recipes-core/dbus/dbus-test_1.12.10.bb
> +++ b/meta/recipes-core/dbus/dbus-test_1.12.10.bb
> @@ -33,13 +33,13 @@ EXTRA_OECONF = "--enable-tests \
>                   --enable-installed-tests \
>                   --enable-checks \
>                   --enable-asserts \
> -                --enable-verbose-mode \
>                   --enable-largefile \
>                   --disable-xml-docs \
>                   --disable-doxygen-docs \
>                   --disable-libaudit \
>                   --with-dbus-test-dir=${PTEST_PATH} \
> -                ${EXTRA_OECONF_X}"
> +                ${EXTRA_OECONF_X} \
> +                --enable-embedded-tests"
>   
>   EXTRA_OECONF_append_class-target = " SYSTEMCTL=${base_bindir}/systemctl"
>   
> @@ -50,6 +50,7 @@ PACKAGECONFIG_class-nativesdk = ""
>   PACKAGECONFIG[systemd] = "--enable-systemd --with-systemdsystemunitdir=${systemd_system_unitdir},--disable-systemd --without-systemdsystemunitdir,systemd"
>   PACKAGECONFIG[x11] = "--with-x --enable-x11-autolaunch,--without-x --disable-x11-autolaunch, virtual/libx11 libsm"
>   PACKAGECONFIG[user-session] = "--enable-user-session --with-systemduserunitdir=${systemd_user_unitdir},--disable-user-session"
> +PACKAGECONFIG[verbose-mode] = "--enable-verbose-mode,,,"
>   
>   do_install() {
>       :
> @@ -58,9 +59,14 @@ do_install() {
>   do_install_ptest() {
>   	install -d ${D}${PTEST_PATH}/test
>   	l="shell printf refs syslog marshal syntax corrupt dbus-daemon dbus-daemon-eavesdrop loopback relay \
> -	   variant uid-permissions syntax spawn sd-activation names monitor message fdpass "
> +	   variant uid-permissions syntax spawn sd-activation names monitor message fdpass service shell-service"
>   	for i in $l; do install ${B}/test/.libs/test-$i ${D}${PTEST_PATH}/test; done
>   
> +	install -d ${D}${PTEST_PATH}/bus
> +	install ${B}/bus/.libs/dbus-daemon-launch-helper-test ${D}${PTEST_PATH}/bus
> +
> +	install ${B}/test/test-segfault ${D}${PTEST_PATH}/test
> +
>   	l="bus bus-system bus-launch-helper"
>   	for i in $l; do install ${B}/bus/.libs/test-$i ${D}${PTEST_PATH}/test; done
>   
> diff --git a/meta/recipes-core/dbus/dbus/run-ptest b/meta/recipes-core/dbus/dbus/run-ptest
> index 353ba1e..e7e1c1e 100755
> --- a/meta/recipes-core/dbus/dbus/run-ptest
> +++ b/meta/recipes-core/dbus/dbus/run-ptest
> @@ -17,8 +17,16 @@ export LD_LIBRARY_PATH=@PTEST_PATH@/test/.libs
>   files=`ls test/test-*`
>   
>   for i in $files
> -	do
> -		./$i ./test/data >/dev/null
> -		output
> -	done
> +do
> +     #these programs are used by testcase test-bus, don't run here
> +     if [ $i = "test/test-service" ] \
> +        || [ $i = "test/test-shell-service" ] \
> +        || [ $i = "test/test-segfault" ]
> +     then
> +         continue
> +     fi
> +
> +     ./$i ./test/data >/dev/null 2>&1
> +     output
> +done
>   

-- 
BRs

Sandy(Li Changqing)



More information about the Openembedded-core mailing list