diff --git a/tests/suites/test_suite_debug.data b/tests/suites/test_suite_debug.data
index d51445d..9b49f6a 100644
--- a/tests/suites/test_suite_debug.data
+++ b/tests/suites/test_suite_debug.data
@@ -1,3 +1,18 @@
+Debug print msg (threshold 1, level 0)
+debug_print_msg_threshold:1:0:"MyFile":999:"MyFile(0999)\: Text message, 2 == 2\n"
+
+Debug print msg (threshold 1, level 1)
+debug_print_msg_threshold:1:1:"MyFile":999:"MyFile(0999)\: Text message, 2 == 2\n"
+
+Debug print msg (threshold 1, level 2)
+debug_print_msg_threshold:1:2:"MyFile":999:""
+
+Debug print msg (threshold 0, level 1)
+debug_print_msg_threshold:0:1:"MyFile":999:""
+
+Debug print msg (threshold 0, level 5)
+debug_print_msg_threshold:0:5:"MyFile":999:""
+
 Debug print return value #1
 debug_print_ret:POLARSSL_DEBUG_LOG_FULL:"MyFile":999:"Test return value":0:"MyFile(0999)\: Test return value() returned 0 (-0x0000)\n"
 
diff --git a/tests/suites/test_suite_debug.function b/tests/suites/test_suite_debug.function
index 3a5adaf..7717a61 100644
--- a/tests/suites/test_suite_debug.function
+++ b/tests/suites/test_suite_debug.function
@@ -30,6 +30,28 @@
  */
 
 /* BEGIN_CASE */
+void debug_print_msg_threshold( int threshold, int level, char *file, int line,
+                                char *result_str )
+{
+    ssl_context ssl;
+    struct buffer_data buffer;
+
+    memset( &ssl, 0, sizeof( ssl_context ) );
+    memset( buffer.buf, 0, 2000 );
+    buffer.ptr = buffer.buf;
+
+    debug_set_log_mode( POLARSSL_DEBUG_LOG_FULL );
+    debug_set_threshold( threshold );
+    ssl_set_dbg(&ssl, string_debug, &buffer);
+
+    debug_print_msg( &ssl, level, file, line,
+                     debug_fmt("Text message, 2 == %d", 2 ) );
+
+    TEST_ASSERT( strcmp( buffer.buf, result_str ) == 0 );
+}
+/* END_CASE */
+
+/* BEGIN_CASE */
 void debug_print_ret( int mode, char *file, int line, char *text, int value,
                       char *result_str )
 {
