[PATCH v6 5/7] tests/tcg: allow to check output of plugins

Pierrick Bouvier posted 7 patches 4 months, 3 weeks ago
Maintainers: Richard Henderson <richard.henderson@linaro.org>, Paolo Bonzini <pbonzini@redhat.com>, Eduardo Habkost <eduardo@habkost.net>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Yanan Wang <wangyanan55@huawei.com>, "Alex Bennée" <alex.bennee@linaro.org>, Alexandre Iooss <erdnaxe@crans.org>, Mahmoud Mandour <ma.mandourr@gmail.com>, Pierrick Bouvier <pierrick.bouvier@linaro.org>
There is a newer version of this series
[PATCH v6 5/7] tests/tcg: allow to check output of plugins
Posted by Pierrick Bouvier 4 months, 3 weeks ago
A specific plugin test can now read and check a plugin output, to ensure
it contains expected values.

Tested-by: Xingtao Yao <yaoxt.fnst@fujitsu.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
---
 tests/tcg/Makefile.target | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tests/tcg/Makefile.target b/tests/tcg/Makefile.target
index 52616544d52..6f50b0176ea 100644
--- a/tests/tcg/Makefile.target
+++ b/tests/tcg/Makefile.target
@@ -90,6 +90,7 @@ CFLAGS=
 LDFLAGS=
 
 QEMU_OPTS=
+CHECK_PLUGIN_OUTPUT_COMMAND=true
 
 
 # If TCG debugging, or TCI is enabled things are a lot slower
@@ -180,6 +181,9 @@ run-plugin-%:
 		-plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
 		-d plugin -D $*.pout \
 		 $(call strip-plugin,$<))
+	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
+	       TEST, check plugin $(call extract-plugin,$@) output \
+	       with $(call strip-plugin,$<))
 else
 run-%: %
 	$(call run-test, $<, \
@@ -194,6 +198,9 @@ run-plugin-%:
 	   	  -plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
 	    	  -d plugin -D $*.pout \
 		  $(QEMU_OPTS) $(call strip-plugin,$<))
+	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
+	       TEST, check plugin $(call extract-plugin,$@) output \
+	       with $(call strip-plugin,$<))
 endif
 
 gdb-%: %
-- 
2.39.2
Re: [PATCH v6 5/7] tests/tcg: allow to check output of plugins
Posted by Alex Bennée 4 months, 2 weeks ago
Pierrick Bouvier <pierrick.bouvier@linaro.org> writes:

> A specific plugin test can now read and check a plugin output, to ensure
> it contains expected values.
>
> Tested-by: Xingtao Yao <yaoxt.fnst@fujitsu.com>
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
> ---
>  tests/tcg/Makefile.target | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/tests/tcg/Makefile.target b/tests/tcg/Makefile.target
> index 52616544d52..6f50b0176ea 100644
> --- a/tests/tcg/Makefile.target
> +++ b/tests/tcg/Makefile.target
> @@ -90,6 +90,7 @@ CFLAGS=
>  LDFLAGS=
>  
>  QEMU_OPTS=
> +CHECK_PLUGIN_OUTPUT_COMMAND=true
>  
>  
>  # If TCG debugging, or TCI is enabled things are a lot slower
> @@ -180,6 +181,9 @@ run-plugin-%:
>  		-plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
>  		-d plugin -D $*.pout \
>  		 $(call strip-plugin,$<))
> +	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
> +	       TEST, check plugin $(call extract-plugin,$@) output \
> +	       with $(call strip-plugin,$<))
>  else
>  run-%: %
>  	$(call run-test, $<, \
> @@ -194,6 +198,9 @@ run-plugin-%:
>  	   	  -plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
>  	    	  -d plugin -D $*.pout \
>  		  $(QEMU_OPTS) $(call strip-plugin,$<))
> +	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
> +	       TEST, check plugin $(call extract-plugin,$@) output \
> +	       with $(call strip-plugin,$<))

No need to have a null test, we can wrap the call in an if:

--8<---------------cut here---------------start------------->8---
modified   tests/tcg/Makefile.target
@@ -90,7 +90,7 @@ CFLAGS=
 LDFLAGS=
 
 QEMU_OPTS=
-CHECK_PLUGIN_OUTPUT_COMMAND=true
+CHECK_PLUGIN_OUTPUT_COMMAND=
 
 
 # If TCG debugging, or TCI is enabled things are a lot slower
@@ -181,9 +181,10 @@ run-plugin-%:
 		-plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
 		-d plugin -D $*.pout \
 		 $(call strip-plugin,$<))
-	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
-	       TEST, check plugin $(call extract-plugin,$@) output \
-	       with $(call strip-plugin,$<))
+	$(if $(CHECK_PLUGIN_OUTPUT_COMMAND),		\
+		$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
+		       TEST, check plugin $(call extract-plugin,$@) output \
+	       		with $(call strip-plugin,$<)))
 else
 run-%: %
 	$(call run-test, $<, \
@@ -198,9 +199,10 @@ run-plugin-%:
 	   	  -plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
 	    	  -d plugin -D $*.pout \
 		  $(QEMU_OPTS) $(call strip-plugin,$<))
-	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
-	       TEST, check plugin $(call extract-plugin,$@) output \
-	       with $(call strip-plugin,$<))
+	$(if $(CHECK_PLUGIN_OUTPUT_COMMAND),		\
+		$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
+		       TEST, check plugin $(call extract-plugin,$@) output \
+	       	with $(call strip-plugin,$<)))
--8<---------------cut here---------------end--------------->8---

>  endif
>  
>  gdb-%: %

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro
Re: [PATCH v6 5/7] tests/tcg: allow to check output of plugins
Posted by Pierrick Bouvier 4 months, 2 weeks ago
On 7/8/24 09:06, Alex Bennée wrote:
> Pierrick Bouvier <pierrick.bouvier@linaro.org> writes:
> 
>> A specific plugin test can now read and check a plugin output, to ensure
>> it contains expected values.
>>
>> Tested-by: Xingtao Yao <yaoxt.fnst@fujitsu.com>
>> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
>> Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>> ---
>>   tests/tcg/Makefile.target | 7 +++++++
>>   1 file changed, 7 insertions(+)
>>
>> diff --git a/tests/tcg/Makefile.target b/tests/tcg/Makefile.target
>> index 52616544d52..6f50b0176ea 100644
>> --- a/tests/tcg/Makefile.target
>> +++ b/tests/tcg/Makefile.target
>> @@ -90,6 +90,7 @@ CFLAGS=
>>   LDFLAGS=
>>   
>>   QEMU_OPTS=
>> +CHECK_PLUGIN_OUTPUT_COMMAND=true
>>   
>>   
>>   # If TCG debugging, or TCI is enabled things are a lot slower
>> @@ -180,6 +181,9 @@ run-plugin-%:
>>   		-plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
>>   		-d plugin -D $*.pout \
>>   		 $(call strip-plugin,$<))
>> +	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
>> +	       TEST, check plugin $(call extract-plugin,$@) output \
>> +	       with $(call strip-plugin,$<))
>>   else
>>   run-%: %
>>   	$(call run-test, $<, \
>> @@ -194,6 +198,9 @@ run-plugin-%:
>>   	   	  -plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
>>   	    	  -d plugin -D $*.pout \
>>   		  $(QEMU_OPTS) $(call strip-plugin,$<))
>> +	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
>> +	       TEST, check plugin $(call extract-plugin,$@) output \
>> +	       with $(call strip-plugin,$<))
> 
> No need to have a null test, we can wrap the call in an if:
> 
> --8<---------------cut here---------------start------------->8---
> modified   tests/tcg/Makefile.target
> @@ -90,7 +90,7 @@ CFLAGS=
>   LDFLAGS=
>   
>   QEMU_OPTS=
> -CHECK_PLUGIN_OUTPUT_COMMAND=true
> +CHECK_PLUGIN_OUTPUT_COMMAND=
>   
>   
>   # If TCG debugging, or TCI is enabled things are a lot slower
> @@ -181,9 +181,10 @@ run-plugin-%:
>   		-plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
>   		-d plugin -D $*.pout \
>   		 $(call strip-plugin,$<))
> -	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
> -	       TEST, check plugin $(call extract-plugin,$@) output \
> -	       with $(call strip-plugin,$<))
> +	$(if $(CHECK_PLUGIN_OUTPUT_COMMAND),		\
> +		$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
> +		       TEST, check plugin $(call extract-plugin,$@) output \
> +	       		with $(call strip-plugin,$<)))
>   else
>   run-%: %
>   	$(call run-test, $<, \
> @@ -198,9 +199,10 @@ run-plugin-%:
>   	   	  -plugin $(PLUGIN_LIB)/$(call extract-plugin,$@)$(PLUGIN_ARGS) \
>   	    	  -d plugin -D $*.pout \
>   		  $(QEMU_OPTS) $(call strip-plugin,$<))
> -	$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
> -	       TEST, check plugin $(call extract-plugin,$@) output \
> -	       with $(call strip-plugin,$<))
> +	$(if $(CHECK_PLUGIN_OUTPUT_COMMAND),		\
> +		$(call quiet-command, $(CHECK_PLUGIN_OUTPUT_COMMAND) $*.pout, \
> +		       TEST, check plugin $(call extract-plugin,$@) output \
> +	       	with $(call strip-plugin,$<)))
> --8<---------------cut here---------------end--------------->8---
> 
>>   endif
>>   
>>   gdb-%: %
> 

Thanks, I was looking exactly for this construction initially! Will 
change to that.