[FFmpeg-cvslog] fate: add av_small_strptime() test to fate-parseutils

Stefano Sabatini git at videolan.org
Mon Sep 17 12:48:56 CEST 2012


ffmpeg | branch: master | Stefano Sabatini <stefasab at gmail.com> | Mon Sep 17 00:49:31 2012 +0200| [1ad63ff14adb652996c4604da59a330cef0d494e] | committer: Stefano Sabatini

fate: add av_small_strptime() test to fate-parseutils

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1ad63ff14adb652996c4604da59a330cef0d494e
---

 libavutil/parseutils.c    |   29 +++++++++++++++++++++++++++++
 tests/ref/fate/parseutils |    6 ++++++
 2 files changed, 35 insertions(+)

diff --git a/libavutil/parseutils.c b/libavutil/parseutils.c
index 8dc583c..6e50d70 100644
--- a/libavutil/parseutils.c
+++ b/libavutil/parseutils.c
@@ -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;
diff --git a/tests/ref/fate/parseutils b/tests/ref/fate/parseutils
index 042ebef..5bf1cae 100644
--- a/tests/ref/fate/parseutils
+++ b/tests/ref/fate/parseutils
@@ -63,6 +63,12 @@ red at 10foo -> error
 red at -1.0 -> error
 red at -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



More information about the ffmpeg-cvslog mailing list