[dpdk-dev] [PATCH v2] app/test: fix log check when default level is high

Thomas Monjalon thomas.monjalon at 6wind.com
Tue May 17 09:05:49 CEST 2016


The log unit test was checking display of low priority messages.
It was not working if RTE_LOG_LEVEL is not RTE_LOG_DEBUG.
It is even easier to see since the default level is INFO (9b9d7ca).

Now the test use ERR and CRIT levels which should be always enabled
while not trigerring syslog output on the console.

Signed-off-by: Thomas Monjalon <thomas.monjalon at 6wind.com>
---
v2:
- fix comments for the log levels
- add comments to explain the test

 app/test/autotest_test_funcs.py | 21 +++++++++------------
 app/test/test_logs.c            | 27 +++++++++++++--------------
 2 files changed, 22 insertions(+), 26 deletions(-)

diff --git a/app/test/autotest_test_funcs.py b/app/test/autotest_test_funcs.py
index 0f012f6..adbd8c9 100644
--- a/app/test/autotest_test_funcs.py
+++ b/app/test/autotest_test_funcs.py
@@ -144,19 +144,16 @@ def logs_autotest(child, test_name):
 	i = 0
 	child.sendline(test_name)
 
+	# logs sequence is printed twice because of history dump
 	log_list = [
-		"TESTAPP1: this is a debug level message",
-		"TESTAPP1: this is a info level message",
-		"TESTAPP1: this is a warning level message",
-		"TESTAPP2: this is a info level message",
-		"TESTAPP2: this is a warning level message",
-		"TESTAPP1: this is a debug level message",
-		"TESTAPP1: this is a debug level message",
-		"TESTAPP1: this is a info level message",
-		"TESTAPP1: this is a warning level message",
-		"TESTAPP2: this is a info level message",
-		"TESTAPP2: this is a warning level message",
-		"TESTAPP1: this is a debug level message",
+		"TESTAPP1: error message",
+		"TESTAPP1: critical message",
+		"TESTAPP2: critical message",
+		"TESTAPP1: error message",
+		"TESTAPP1: error message",
+		"TESTAPP1: critical message",
+		"TESTAPP2: critical message",
+		"TESTAPP1: error message",
 	]
 
 	for log_msg in log_list:
diff --git a/app/test/test_logs.c b/app/test/test_logs.c
index 18a3b6a..05aa862 100644
--- a/app/test/test_logs.c
+++ b/app/test/test_logs.c
@@ -65,26 +65,25 @@ test_logs(void)
 	rte_set_log_type(RTE_LOGTYPE_TESTAPP1, 1);
 	rte_set_log_type(RTE_LOGTYPE_TESTAPP2, 1);
 
-	/* log in debug level */
-	rte_set_log_level(RTE_LOG_DEBUG);
-	RTE_LOG(DEBUG, TESTAPP1, "this is a debug level message\n");
-	RTE_LOG(INFO, TESTAPP1, "this is a info level message\n");
-	RTE_LOG(WARNING, TESTAPP1, "this is a warning level message\n");
+	/* log in error level */
+	rte_set_log_level(RTE_LOG_ERR);
+	RTE_LOG(ERR, TESTAPP1, "error message\n");
+	RTE_LOG(CRIT, TESTAPP1, "critical message\n");
 
-	/* log in info level */
-	rte_set_log_level(RTE_LOG_INFO);
-	RTE_LOG(DEBUG, TESTAPP2, "debug level message (not displayed)\n");
-	RTE_LOG(INFO, TESTAPP2, "this is a info level message\n");
-	RTE_LOG(WARNING, TESTAPP2, "this is a warning level message\n");
+	/* log in critical level */
+	rte_set_log_level(RTE_LOG_CRIT);
+	RTE_LOG(ERR, TESTAPP2, "error message (not displayed)\n");
+	RTE_LOG(CRIT, TESTAPP2, "critical message\n");
 
 	/* disable one log type */
 	rte_set_log_type(RTE_LOGTYPE_TESTAPP2, 0);
 
-	/* log in debug level */
-	rte_set_log_level(RTE_LOG_DEBUG);
-	RTE_LOG(DEBUG, TESTAPP1, "this is a debug level message\n");
-	RTE_LOG(DEBUG, TESTAPP2, "debug level message (not displayed)\n");
+	/* log in error level */
+	rte_set_log_level(RTE_LOG_ERR);
+	RTE_LOG(ERR, TESTAPP1, "error message\n");
+	RTE_LOG(ERR, TESTAPP2, "error message (not displayed)\n");
 
+	/* print again the previous logs */
 	rte_log_dump_history(stdout);
 
 	return 0;
-- 
2.7.0



More information about the dev mailing list