diff mbox series

[v2] ltp-pan: Increase allowed width of test name in logs

Message ID 20180730153607.15074-1-punit.agrawal@arm.com
State Changes Requested
Headers show
Series [v2] ltp-pan: Increase allowed width of test name in logs | expand

Commit Message

Punit Agrawal July 30, 2018, 3:36 p.m. UTC
ltp-pan truncates the test name when logging the outcome of
tests. This is causing issues with tooling which is expecting to parse
unique test names from the log.

cgroup_fj_stress_cpuacct_2_2_o PASS       0
cgroup_fj_stress_cpuacct_3_3_o PASS       0
cgroup_fj_stress_cpuacct_4_4_o PASS       0
cgroup_fj_stress_cpuacct_2_9_o PASS       0
cgroup_fj_stress_cpuacct_10_3_ PASS       0

Fix this by increasing the expected size of test name and removing the
hard restriction on the size of the name. Refactor the format string
into a global variable as it seems to be repeated multiple times.

Signed-off-by: Punit Agrawal <punit.agrawal@arm.com>
---
Hi Cyril,

Thanks for the feedback. I've updated the patch to use macros now.

Regards,
Punit

 pan/ltp-pan.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

Comments

Cyril Hrubis July 30, 2018, 3:48 p.m. UTC | #1
Hi!
> diff --git a/pan/ltp-pan.c b/pan/ltp-pan.c
> index a2bb9b7ef..6a4508c90 100644
> --- a/pan/ltp-pan.c
> +++ b/pan/ltp-pan.c
> @@ -130,6 +130,9 @@ static char *test_out_dir = NULL;	/* dir to buffer output to */
>  zoo_t zoofile;
>  static char *reporttype = NULL;
>  
> +/* Output format of ltp-pan results */
> +#define ResultFmt	"%-50s %-10.10s %-10.10s\n";

The ltp-pan does not even compile with this because of the semicolon.

Can you please at least compile-test your changes before sumbitting.

>  /* zoolib */
>  int rec_signal;			/* received signal */
>  int send_signal;		/* signal to send */
> @@ -350,9 +353,9 @@ int main(int argc, char **argv)
>  			fprintf(logfile, "Test Start Time: %s\n", s);
>  			fprintf(logfile,
>  				"-----------------------------------------\n");
> -			fprintf(logfile, "%-30.20s %-10.10s %-10.10s\n",
> +			fprintf(logfile, ResultFmt,
>  				"Testcase", "Result", "Exit Value");
> -			fprintf(logfile, "%-30.20s %-10.10s %-10.10s\n",
> +			fprintf(logfile, ResultFmt,
>  				"--------", "------", "------------");
>  		}
>  		fflush(logfile);
> @@ -825,7 +828,7 @@ check_pids(struct tag_pgrp *running, int *num_active, int keep_active,
>  						}
>  
>  						fprintf(logfile,
> -							"%-30.30s %-10.10s %-5d\n",
> +							ResultFmt,
>  							running[i].cmd->name,
>  							result_str,
>  							w);
> @@ -1104,7 +1107,7 @@ run_child(struct coll_entry *colle, struct tag_pgrp *active, int quiet_mode,
>  				if (termid != 0)
>  					++ * failcnt;
>  
> -				fprintf(logfile, "%-30.30s %-10.10s %-5d\n",
> +				fprintf(logfile, ResultFmt,
>  					colle->name,
>  					((termid != 0) ? "FAIL" : "PASS"),
>  					termid);

Looking closer these two are actually different in the last column. So I
suppose that we can extract only the first two columns as with:

#define ResultFmt "%-50s %-10.10s"

	...
	fprintf(..., ResultFmt" %-10.10%s\n", ...);
	...
	fprintf(,,,, ResultFmt" %-5d\n", ...);
	...
Punit Agrawal July 30, 2018, 4:01 p.m. UTC | #2
Cyril Hrubis <chrubis@suse.cz> writes:

> Hi!
>> diff --git a/pan/ltp-pan.c b/pan/ltp-pan.c
>> index a2bb9b7ef..6a4508c90 100644
>> --- a/pan/ltp-pan.c
>> +++ b/pan/ltp-pan.c
>> @@ -130,6 +130,9 @@ static char *test_out_dir = NULL;	/* dir to buffer output to */
>>  zoo_t zoofile;
>>  static char *reporttype = NULL;
>>  
>> +/* Output format of ltp-pan results */
>> +#define ResultFmt	"%-50s %-10.10s %-10.10s\n";
>
> The ltp-pan does not even compile with this because of the semicolon.
>
> Can you please at least compile-test your changes before sumbitting.

Ack! That is very sloppy of me. I'll be more careful going forward.

>>  /* zoolib */
>>  int rec_signal;			/* received signal */
>>  int send_signal;		/* signal to send */
>> @@ -350,9 +353,9 @@ int main(int argc, char **argv)
>>  			fprintf(logfile, "Test Start Time: %s\n", s);
>>  			fprintf(logfile,
>>  				"-----------------------------------------\n");
>> -			fprintf(logfile, "%-30.20s %-10.10s %-10.10s\n",
>> +			fprintf(logfile, ResultFmt,
>>  				"Testcase", "Result", "Exit Value");
>> -			fprintf(logfile, "%-30.20s %-10.10s %-10.10s\n",
>> +			fprintf(logfile, ResultFmt,
>>  				"--------", "------", "------------");
>>  		}
>>  		fflush(logfile);
>> @@ -825,7 +828,7 @@ check_pids(struct tag_pgrp *running, int *num_active, int keep_active,
>>  						}
>>  
>>  						fprintf(logfile,
>> -							"%-30.30s %-10.10s %-5d\n",
>> +							ResultFmt,
>>  							running[i].cmd->name,
>>  							result_str,
>>  							w);
>> @@ -1104,7 +1107,7 @@ run_child(struct coll_entry *colle, struct tag_pgrp *active, int quiet_mode,
>>  				if (termid != 0)
>>  					++ * failcnt;
>>  
>> -				fprintf(logfile, "%-30.30s %-10.10s %-5d\n",
>> +				fprintf(logfile, ResultFmt,
>>  					colle->name,
>>  					((termid != 0) ? "FAIL" : "PASS"),
>>  					termid);
>
> Looking closer these two are actually different in the last column. So I
> suppose that we can extract only the first two columns as with:
>
> #define ResultFmt "%-50s %-10.10s"
>
> 	...
> 	fprintf(..., ResultFmt" %-10.10%s\n", ...);
> 	...
> 	fprintf(,,,, ResultFmt" %-5d\n", ...);
> 	...

I've taken this approach now and will send an updated patch with the
changes.

Thanks,
Punit
diff mbox series

Patch

diff --git a/pan/ltp-pan.c b/pan/ltp-pan.c
index a2bb9b7ef..6a4508c90 100644
--- a/pan/ltp-pan.c
+++ b/pan/ltp-pan.c
@@ -130,6 +130,9 @@  static char *test_out_dir = NULL;	/* dir to buffer output to */
 zoo_t zoofile;
 static char *reporttype = NULL;
 
+/* Output format of ltp-pan results */
+#define ResultFmt	"%-50s %-10.10s %-10.10s\n";
+
 /* zoolib */
 int rec_signal;			/* received signal */
 int send_signal;		/* signal to send */
@@ -350,9 +353,9 @@  int main(int argc, char **argv)
 			fprintf(logfile, "Test Start Time: %s\n", s);
 			fprintf(logfile,
 				"-----------------------------------------\n");
-			fprintf(logfile, "%-30.20s %-10.10s %-10.10s\n",
+			fprintf(logfile, ResultFmt,
 				"Testcase", "Result", "Exit Value");
-			fprintf(logfile, "%-30.20s %-10.10s %-10.10s\n",
+			fprintf(logfile, ResultFmt,
 				"--------", "------", "------------");
 		}
 		fflush(logfile);
@@ -825,7 +828,7 @@  check_pids(struct tag_pgrp *running, int *num_active, int keep_active,
 						}
 
 						fprintf(logfile,
-							"%-30.30s %-10.10s %-5d\n",
+							ResultFmt,
 							running[i].cmd->name,
 							result_str,
 							w);
@@ -1104,7 +1107,7 @@  run_child(struct coll_entry *colle, struct tag_pgrp *active, int quiet_mode,
 				if (termid != 0)
 					++ * failcnt;
 
-				fprintf(logfile, "%-30.30s %-10.10s %-5d\n",
+				fprintf(logfile, ResultFmt,
 					colle->name,
 					((termid != 0) ? "FAIL" : "PASS"),
 					termid);