fate: add av_image_check_size() test
authorMichael Niedermayer <michael@niedermayer.cc>
Sat, 10 Dec 2016 20:39:56 +0000 (21:39 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Sat, 10 Dec 2016 21:24:10 +0000 (22:24 +0100)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavutil/Makefile
libavutil/tests/imgutils.c [new file with mode: 0644]
tests/fate/libavutil.mak
tests/ref/fate/imgutils [new file with mode: 0644]

index 6474a30..a8c0882 100644 (file)
@@ -202,6 +202,7 @@ TESTPROGS = adler32                                                     \
             float_dsp                                                   \
             hash                                                        \
             hmac                                                        \
+            imgutils                                                    \
             lfg                                                         \
             lls                                                         \
             log                                                         \
diff --git a/libavutil/tests/imgutils.c b/libavutil/tests/imgutils.c
new file mode 100644 (file)
index 0000000..e51ecc6
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include "libavutil/imgutils.c"
+
+#undef printf
+
+int main(void)
+{
+    int i;
+    int64_t x, y;
+
+    for (y = -1; y<UINT_MAX; y+= y/2 + 1) {
+        for (x = -1; x<UINT_MAX; x+= x/2 + 1) {
+            int ret = av_image_check_size(x, y, 0, NULL);
+            printf("%d", ret >= 0);
+        }
+        printf("\n");
+    }
+
+    return 0;
+}
index 0ab6fc5..82fe9a2 100644 (file)
@@ -88,6 +88,10 @@ FATE_LIBAVUTIL += fate-hmac
 fate-hmac: libavutil/tests/hmac$(EXESUF)
 fate-hmac: CMD = run libavutil/tests/hmac
 
+FATE_LIBAVUTIL += fate-imgutils
+fate-imgutils: libavutil/tests/imgutils$(EXESUF)
+fate-imgutils: CMD = run libavutil/tests/imgutils
+
 FATE_LIBAVUTIL += fate-md5
 fate-md5: libavutil/tests/md5$(EXESUF)
 fate-md5: CMD = run libavutil/tests/md5
diff --git a/tests/ref/fate/imgutils b/tests/ref/fate/imgutils
new file mode 100644 (file)
index 0000000..aba4822
--- /dev/null
@@ -0,0 +1,55 @@
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0011111111111111111111111111111111110000000000000000000
+0011111111111111111111111111111111110000000000000000000
+0011111111111111111111111111111111110000000000000000000
+0011111111111111111111111111111111110000000000000000000
+0011111111111111111111111111111111110000000000000000000
+0011111111111111111111111111111111110000000000000000000
+0011111111111111111111111111111111110000000000000000000
+0011111111111111111111111111111111110000000000000000000
+0011111111111111111111111111111111100000000000000000000
+0011111111111111111111111111111111100000000000000000000
+0011111111111111111111111111111111000000000000000000000
+0011111111111111111111111111111111000000000000000000000
+0011111111111111111111111111111110000000000000000000000
+0011111111111111111111111111111100000000000000000000000
+0011111111111111111111111111111100000000000000000000000
+0011111111111111111111111111111000000000000000000000000
+0011111111111111111111111111110000000000000000000000000
+0011111111111111111111111111100000000000000000000000000
+0011111111111111111111111111000000000000000000000000000
+0011111111111111111111111110000000000000000000000000000
+0011111111111111111111111100000000000000000000000000000
+0011111111111111111111111000000000000000000000000000000
+0011111111111111111111110000000000000000000000000000000
+0011111111111111111111100000000000000000000000000000000
+0011111111111111111111000000000000000000000000000000000
+0011111111111111111110000000000000000000000000000000000
+0011111111111111111100000000000000000000000000000000000
+0011111111111111111000000000000000000000000000000000000
+0011111111111111110000000000000000000000000000000000000
+0011111111111111100000000000000000000000000000000000000
+0011111111111110000000000000000000000000000000000000000
+0011111111111100000000000000000000000000000000000000000
+0011111111110000000000000000000000000000000000000000000
+0011111111000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000