fate: add av_small_strptime() test to fate-parseutils
authorStefano Sabatini <stefasab@gmail.com>
Sun, 16 Sep 2012 22:49:31 +0000 (00:49 +0200)
committerStefano Sabatini <stefasab@gmail.com>
Mon, 17 Sep 2012 10:46:55 +0000 (12:46 +0200)
libavutil/parseutils.c
tests/ref/fate/parseutils

index 8dc583c..6e50d70 100644 (file)
@@ -781,6 +781,35 @@ int main(void)
         }
     }
 
+    printf("\nTesting av_small_strptime()\n");
+    {
+        int i;
+        struct tm tm = { 0 };
+        struct fmt_timespec_entry {
+            const char *fmt, *timespec;
+        } fmt_timespec_entries[] = {
+            { "%Y-%m-%d",                    "2012-12-21" },
+            { "%Y - %m - %d",                "2012-12-21" },
+            { "%Y-%m-%d %H:%M:%S",           "2012-12-21 20:12:21" },
+            { "  %Y - %m - %d %H : %M : %S", "   2012 - 12 -  21   20 : 12 : 21" },
+        };
+
+        av_log_set_level(AV_LOG_DEBUG);
+        for (i = 0;  i < FF_ARRAY_ELEMS(fmt_timespec_entries); i++) {
+            char *p;
+            struct fmt_timespec_entry *e = &fmt_timespec_entries[i];
+            printf("fmt:'%s' spec:'%s' -> ", e->fmt, e->timespec);
+            p = av_small_strptime(e->timespec, e->fmt, &tm);
+            if (p) {
+                printf("%04d-%02d-%2d %02d:%02d:%02d\n",
+                       1900+tm.tm_year, tm.tm_mon+1, tm.tm_mday,
+                       tm.tm_hour, tm.tm_min, tm.tm_sec);
+            } else {
+                printf("error\n");
+            }
+        }
+    }
+
     printf("\nTesting av_parse_time()\n");
     {
         int i;
index 042ebef..5bf1cae 100644 (file)
@@ -63,6 +63,12 @@ red@10foo -> error
 red@-1.0 -> error
 red@-0.0 -> R(255) G(0) B(0) A(0)
 
+Testing av_small_strptime()
+fmt:'%Y-%m-%d' spec:'2012-12-21' -> 2012-12-21 00:00:00
+fmt:'%Y - %m - %d' spec:'2012-12-21' -> 2012-12-21 00:00:00
+fmt:'%Y-%m-%d %H:%M:%S' spec:'2012-12-21 20:12:21' -> 2012-12-21 20:12:21
+fmt:'  %Y - %m - %d %H : %M : %S' spec:'   2012 - 12 -  21   20 : 12 : 21' -> 2012-12-21 20:12:21
+
 Testing av_parse_time()
 (now is 2012-03-17 09:14:13 +0100, local time is UTC+1)
 now                      ->     1331972053.000000 = 2012-03-17T08:14:13Z