[PATCH i-g-t 2/2] lib: add exit status message to simple tests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Add an exit status message to simple tests, similar to the one printed
for subtests. This includes the test outcome and the time taken to run
the test.

Signed-off-by: Thomas Wood <thomas.wood@xxxxxxxxx>
---
 lib/igt_core.c | 30 +++++++++++++++++++++++++++++-
 1 file changed, 29 insertions(+), 1 deletion(-)

diff --git a/lib/igt_core.c b/lib/igt_core.c
index 41f84bb..0ae6918 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -591,6 +591,9 @@ out:
 	/* install exit handler, to ensure we clean up */
 	igt_install_exit_handler(common_exit_handler);
 
+	if (!test_with_subtests)
+		gettime(&subtest_time);
+
 	return ret;
 }
 
@@ -975,8 +978,33 @@ void igt_exit(void)
 	kmsg(KERN_INFO "%s: exiting, ret=%d\n", command_str, igt_exitcode);
 	igt_debug("Exiting with status code %d\n", igt_exitcode);
 
-	if (!test_with_subtests)
+	if (!test_with_subtests) {
+		struct timespec now;
+		double elapsed;
+		const char *result;
+
+		gettime(&now);
+		elapsed = now.tv_sec - subtest_time.tv_sec;
+		elapsed += (now.tv_nsec - subtest_time.tv_nsec) * 1e-9;
+
+		switch (igt_exitcode) {
+			case IGT_EXIT_SUCCESS:
+				result = "SUCCESS";
+				break;
+			case IGT_EXIT_TIMEOUT:
+				result = "TIMEOUT";
+				break;
+			case IGT_EXIT_SKIP:
+				result = "SKIP";
+				break;
+			default:
+				result = "FAIL";
+		}
+
+
+		printf("%s (%.3fs)\n", result, elapsed);
 		exit(igt_exitcode);
+	}
 
 	/* Calling this without calling one of the above is a failure */
 	assert(skipped_one || succeeded_one || failed_one);
-- 
2.1.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/intel-gfx





[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux