From: "Jon Mason" <jdmason@kudzu.us>
To: Jack Davison <jack.davison@arm.com>
Cc: "meta-arm@lists.yoctoproject.org" <meta-arm@lists.yoctoproject.org>
Subject: Re: [meta-arm] [PATCH] arm: Enable ptest for optee xtest
Date: Wed, 31 Mar 2021 08:55:37 -0400 [thread overview]
Message-ID: <20210331125537.GC9624@kudzu.us> (raw)
In-Reply-To: <AM0PR08MB49633C9F6E7CE8C6447540648E7E9@AM0PR08MB4963.eurprd08.prod.outlook.com>
On Mon, Mar 29, 2021 at 05:56:59PM +0000, Jack Davison wrote:
> Provides a run-ptest script for running xtest under ptest-runner. This
> script parses the output of xtest and converts it to Automake's test
> format.
>
> Change-Id: I7c981422034b39701ddd74e176f2f5134ae607e6
> Signed-off-by: Jack Davison <jack.davison@arm.com>
> ---
Patch included into the master branch.
Thanks,
Jon
> .../recipes-security/optee/optee-test.inc | 3 +-
> .../optee/optee-test/run-ptest | 52 +++++++++++++++++++
> 2 files changed, 54 insertions(+), 1 deletion(-)
> create mode 100755 meta-arm/recipes-security/optee/optee-test/run-ptest
>
> diff --git a/meta-arm/recipes-security/optee/optee-test.inc b/meta-arm/recipes-security/optee/optee-test.inc
> index 969d5e2..877bdeb 100644
> --- a/meta-arm/recipes-security/optee/optee-test.inc
> +++ b/meta-arm/recipes-security/optee/optee-test.inc
> @@ -5,7 +5,7 @@ HOMEPAGE = "https://www.op-tee.org/"
> LICENSE = "BSD & GPLv2"
> LIC_FILES_CHKSUM = "file://${S}/LICENSE.md;md5=daa2bcccc666345ab8940aab1315a4fa"
>
> -inherit python3native
> +inherit python3native ptest
> require optee.inc
>
> # Linking fails on musl due to C++/threads
> @@ -19,6 +19,7 @@ SRC_URI = "git://github.com/OP-TEE/optee_test.git \
> file://0001-host-xtest-Adjust-order-of-including-compiler.h.patch \
> file://0002-make-remove-Wno-unsafe-loop-for-clang.patch \
> file://0003-make-remove-Wmissing-noreturn-for-clang.patch \
> + file://run-ptest \
> "
>
> S = "${WORKDIR}/git"
> diff --git a/meta-arm/recipes-security/optee/optee-test/run-ptest b/meta-arm/recipes-security/optee/optee-test/run-ptest
> new file mode 100755
> index 0000000..ba88c14
> --- /dev/null
> +++ b/meta-arm/recipes-security/optee/optee-test/run-ptest
> @@ -0,0 +1,52 @@
> +#!/bin/sh
> +xtest | awk '
> +
> + # Escapes the special characters in a string so that, when
> + # included in a regex, it represents a literal match
> + function regx_escape_literal(str, ret) {
> + ret = str
> + gsub(/[\[\]\^\$\.\*\?\+\{\}\\\(\)\|]/ , "\\\\&", str)
> + return str
> + }
> +
> + # Returns the simple test formatted name
> + function name(n, ret) {
> + ret = n
> + gsub(/\./, " ", ret)
> + return ret
> + }
> +
> + # Returns the simple test formatted result
> + function result(res) {
> + if(res ~ /OK/) {
> + return "PASS"
> + } else if(res ~ /FAILED/) {
> + return "FAIL"
> + }
> + }
> +
> + function parse(name, description, has_subtests, result_line) {
> + has_subtests = 0
> +
> + # Consume every line up to the result line
> + result_line = " " regx_escape_literal(name) " (OK|FAILED)"
> + do {
> + getline
> +
> + # If this is a subtest (denoted by an "o" bullet) then subparse
> + if($0 ~ /^o /) {
> + parse($2, description " : " substr($0, index($0, $3)))
> + has_subtests = 1
> + }
> + } while ($0 !~ result_line)
> +
> + # Only print the results for the deepest nested subtests
> + if(!has_subtests) {
> + print result($2) ": " name(name) " - " description
> + }
> + }
> +
> + # Start parsing at the beginning of every test (denoted by a "*" bullet)
> + /^\* / { parse($2, substr($0, index($0, $3))) }
> +
> +'
> --
> 2.17.1
>
>
>
next prev parent reply other threads:[~2021-03-31 12:55 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <AM0PR08MB496369DE1256F32E238B3C068E7E9@AM0PR08MB4963.eurprd08.prod.outlook.com>
2021-03-29 17:56 ` [PATCH] arm: Enable ptest for optee xtest Jack Davison
2021-03-31 12:55 ` Jon Mason [this message]
2021-03-30 13:02 Jack Davison
2021-03-30 16:27 ` [meta-arm] " Denys Dmytriyenko
2021-03-30 18:52 ` Jon Mason
2021-03-31 12:56 ` Jon Mason
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210331125537.GC9624@kudzu.us \
--to=jdmason@kudzu.us \
--cc=jack.davison@arm.com \
--cc=meta-arm@lists.yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.