< prev index next >

test/native/logging/test_logDecorations.cpp

Print this page
rev 12265 : 8169003: LogDecorations.iso8601_utctime_test fails if numeric locale uses "," as separator between integer and fraction part
Reviewed-by: duke

@@ -129,14 +129,13 @@
 
   const char *timestr = decorations.decoration(LogDecorators::time_decorator);
   time_t expected_ts = time(NULL);
 
   // Verify format
-  int y, M, d, h, m;
-  double s;
-  int read = sscanf(timestr, "%d-%d-%dT%d:%d:%lf", &y, &M, &d, &h, &m, &s);
-  ASSERT_EQ(6, read) << "Invalid format: " << timestr;
+  int y, M, d, h, m, s, ms;
+  int read = sscanf(timestr, "%d-%d-%dT%d:%d:%d.%d", &y, &M, &d, &h, &m, &s, &ms);
+  ASSERT_EQ(7, read) << "Invalid format: " << timestr;
 
   // Verify reported time & date
   struct tm reported_time = {0};
   reported_time.tm_year = y - 1900;
   reported_time.tm_mon = M - 1;

@@ -165,14 +164,15 @@
   const char *timestr = decorations.decoration(LogDecorators::utctime_decorator);
   time_t expected_ts = time(NULL);
 
   // Verify format
   char trailing_character;
-  int y, M, d, h, m, offset;
-  double s;
-  int read = sscanf(timestr, "%d-%d-%dT%d:%d:%lf%c%d", &y, &M, &d, &h, &m, &s, &trailing_character, &offset);
-  ASSERT_GT(read, 7) << "Invalid format: " << timestr;
+  int y, M, d, h, m, s, ms, offset;
+
+  int read = sscanf(timestr, "%d-%d-%dT%d:%d:%d.%d%c%d", &y, &M, &d, &h, &m, &s, &ms, &trailing_character, &offset);
+
+  ASSERT_EQ(9, read) << "Invalid format: " << timestr;
 
   // Ensure time is UTC (no offset)
   if (trailing_character == '+') {
     ASSERT_EQ(0, offset) << "Invalid offset: " << timestr;
   } else {
< prev index next >