[DTrace-devel] [PATCH] tests: repair accidentally deleted tst.pidprobes.sh

Eugene Loh eugene.loh at oracle.com
Mon Nov 11 21:50:42 UTC 2024


Reviewed-by: Eugene Loh <eugene.loh at oracle.com>

FWIW, I think the new tests should also have .r files.  This would 
improve the chances of preventing false PASSes.

Also, I think the way of keeping "library" scripts from being run is by 
sticking them in utils.  I mean, I guess you could also omit the .sh suffix.

On 11/8/24 16:12, Nick Alcock wrote:
> My intent when writing the earlier tests was to have
> test/unittest/usdt/pidprobes.sh as a sort of shell script library
> called by tst.pidprobes.sh, tst.pidargs.sh and tst.pidargmap.sh.
> Alas, *.sh is executed as a test by runtest.sh, so
> pidprobes.sh was treated as a test, not a library.  So rename it
> back to what it was called before and make sure it works when
> invoked directly by runtest.sh, but also let it be called by
> the other two tests to test other corners of this.
>
> (Also: apply some small review comments that never made it
> before the previous patch hit dev.)
>
> Signed-off-by: Nick Alcock <nick.alcock at oracle.com>
> ---
>   test/unittest/usdt/tst.pidargmap.sh             |  2 +-
>   test/unittest/usdt/tst.pidargs.sh               |  2 +-
>   .../usdt/{pidprobes.sh => tst.pidprobes.sh}     | 17 +++++++++++------
>   3 files changed, 13 insertions(+), 8 deletions(-)
>   rename test/unittest/usdt/{pidprobes.sh => tst.pidprobes.sh} (95%)
>
> diff --git a/test/unittest/usdt/tst.pidargmap.sh b/test/unittest/usdt/tst.pidargmap.sh
> index 0c83f8703539..3594e782b0c1 100755
> --- a/test/unittest/usdt/tst.pidargmap.sh
> +++ b/test/unittest/usdt/tst.pidargmap.sh
> @@ -8,4 +8,4 @@
>   # This test verifies that USDT and pid probes that share underlying probes
>   # do not apply arg mappings (incorrectly) to the pid probes.
>   
> -exec $(dirname $_test)/pidprobes.sh $1 t t
> +exec $(dirname $_test)/tst.pidprobes.sh $1 t t
> diff --git a/test/unittest/usdt/tst.pidargs.sh b/test/unittest/usdt/tst.pidargs.sh
> index 53cba7c39624..0156d23f2f28 100755
> --- a/test/unittest/usdt/tst.pidargs.sh
> +++ b/test/unittest/usdt/tst.pidargs.sh
> @@ -8,4 +8,4 @@
>   # This test verifies that USDT and pid probes that share underlying probes
>   # get the arguments correct for the USDT probes.
>   
> -exec $(dirname $_test)/pidprobes.sh $1 t ""
> +exec $(dirname $_test)/tst.pidprobes.sh $1 t ""
> diff --git a/test/unittest/usdt/pidprobes.sh b/test/unittest/usdt/tst.pidprobes.sh
> similarity index 95%
> rename from test/unittest/usdt/pidprobes.sh
> rename to test/unittest/usdt/tst.pidprobes.sh
> index aedc6256f195..6fe6d752a6d1 100755
> --- a/test/unittest/usdt/pidprobes.sh
> +++ b/test/unittest/usdt/tst.pidprobes.sh
> @@ -6,11 +6,16 @@
>   # http://oss.oracle.com/licenses/upl.
>   #
>   # This test verifies various properties of USDT and pid probes sharing
> -# underlying probes.
> +# underlying probes.  With only one argument (as called by runtest.sh),
> +# it verifies that USDT and pid probes can share underlying probes.
> +#
> +# Other tests call back to this one to test arg-mapping behaviour,
> +# verify that usdt probes actually fire when overlapped by pid probes,
> +# etc.
>   
>   dtrace=$1
> -usdt=$2
> -mapping=$3
> +usdt=${2:-}
> +mapping=${3:-}
>   
>   # Set up test directory.
>   
> @@ -86,7 +91,7 @@ fi
>   # Check that the program output is 0 when the USDT probe is not enabled.
>   # That is, the PYRAMID_ENTRY_ENABLED() is-enabled checks should not pass.
>   
> -./main standalone > main.out
> +./main > main.out
>   echo "my result: 0" > main.out.expected
>   if ! diff -q main.out main.out.expected > /dev/null; then
>   	echo '"my result"' looks wrong when not using DTrace
> @@ -131,7 +136,7 @@ fi
>   echo "my result: 10" > main.out2.expected
>   
>   if ! diff -q main.out2 main.out2.expected > /dev/null; then
> -	echo '"my result"' looks wrong
> +	echo '"my result"' looks wrong when using DTrace
>   	echo === got ===
>   	cat main.out2
>   	echo === expected ===
> @@ -297,7 +302,7 @@ if [[ -n $usdt ]]; then
>   	fi
>   fi
>   
> -# Sort and check (dropping any wake-up firings from deferred probing).
> +# Sort and check.
>   
>   sort dtrace.out          > dtrace.out.sorted
>   sort dtrace.out.expected > dtrace.out.expected.sorted
>
> base-commit: 1a87c88ebb6e8b13dc5ce348d825a8dc3512ace0



More information about the DTrace-devel mailing list