Signed-off-by: Thomas Turner <thomas...@googlemail.com> --- libavutil/tests/random_seed.c | 36 +++++++++++++++++++++--------------- tests/ref/fate/random_seed | 1 + 2 files changed, 22 insertions(+), 15 deletions(-)
diff --git a/libavutil/tests/random_seed.c b/libavutil/tests/random_seed.c index ebe9b3e..ffcb74d 100644 --- a/libavutil/tests/random_seed.c +++ b/libavutil/tests/random_seed.c @@ -1,6 +1,4 @@ /* - * Copyright (c) 2009 Baptiste Coudurier <baptiste.coudur...@gmail.com> - * * This file is part of FFmpeg. * * FFmpeg is free software; you can redistribute it and/or @@ -18,29 +16,37 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ -#define TEST 1 + #include "libavutil/random_seed.c" #undef printf #define N 256 +#define F 2 #include <stdio.h> +typedef uint32_t (*random_seed_ptr_t)(void); + int main(void) { - int i, j, retry; + int i, j, rsf, retry; uint32_t seeds[N]; + random_seed_ptr_t random_seed[F] = {av_get_random_seed, get_generic_seed}; - for (retry=0; retry<3; retry++){ - for (i=0; i<N; i++){ - seeds[i] = av_get_random_seed(); - for (j=0; j<i; j++) - if (seeds[j] == seeds[i]) - goto retry; + for (rsf=0; rsf<F; ++rsf){ + for (retry=0; retry<3; retry++){ + for (i=0; i<N; i++){ + seeds[i] = random_seed[rsf](); + for (j=0; j<i; j++) + if (seeds[j] == seeds[i]) + goto retry; + } + printf("seeds OK\n"); + goto next; + retry:; } - printf("seeds OK\n"); - return 0; - retry:; + printf("rsf %d: FAIL at %d with %X\n", rsf, j, seeds[j]); + return 1; + next:; } - printf("FAIL at %d with %X\n", j, seeds[j]); - return 1; + return 0; } diff --git a/tests/ref/fate/random_seed b/tests/ref/fate/random_seed index 2b5b3af..ef0eef2 100644 --- a/tests/ref/fate/random_seed +++ b/tests/ref/fate/random_seed @@ -1 +1,2 @@ seeds OK +seeds OK -- 1.9.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel