summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/signal-logging.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/signal-logging.c b/test/signal-logging.c
index 0e352aa0b..3206ddefa 100644
--- a/test/signal-logging.c
+++ b/test/signal-logging.c
@@ -242,6 +242,27 @@ static void logging_format(void)
ui <<= 1;
} while(ui);
+ /* signed number substitution */
+ i = 0;
+ do {
+ char expected[30];
+ sprintf(expected, "(EE) %d\n", i);
+ LogMessageVerbSigSafe(X_ERROR, -1, "%d\n", i);
+ read_log_msg(logmsg);
+ assert(strcmp(logmsg, expected) == 0);
+
+
+ sprintf(expected, "(EE) %d\n", i | INT_MIN);
+ LogMessageVerbSigSafe(X_ERROR, -1, "%d\n", i | INT_MIN);
+ read_log_msg(logmsg);
+ assert(strcmp(logmsg, expected) == 0);
+
+ if (i == 0)
+ i = 1;
+ else
+ i <<= 1;
+ } while(i > INT_MIN);
+
/* hex number substitution */
ui = 0;
do {