[FFmpeg-devel] [PATCH] remove unused and broken test program in libavutil/base64.c

Stefano Sabatini stefano.sabatini-lala
Sat Feb 7 00:27:49 CET 2009


On date Friday 2009-02-06 01:55:11 +0100, Michael Niedermayer encoded:
> On Fri, Feb 06, 2009 at 01:30:51AM +0100, Stefano Sabatini wrote:
> > On date Friday 2009-02-06 01:05:33 +0100, Michael Niedermayer encoded:
> > > On Thu, Feb 05, 2009 at 11:19:41PM +0100, Stefano Sabatini wrote:
> > > > On date Thursday 2009-02-05 21:35:25 +0100, Michael Niedermayer encoded:
> > > > [...]
> > > > > considering our agreement on the irrelevnace of the code
> > > > > please remove the tests for invalidness, remove the hex dumping and
> > > > > try to remove as much of the other code as well.
> > > > > also either the fixed vectors or the random ones must be dropped
> > > > > they are redundant in some sense (keep whats less code)
> > > > > 
> > > > > its just a simple self test, what you wrote is overkill IMHO
> > > > 
> > > > New round, regards.
> > > > -- 
> > > > FFmpeg = Friendly & Free Mythic Picky Encoding/decoding Guru
> > > 
> > > > Index: ffmpeg/libavutil/base64.c
> > > > ===================================================================
> > > > --- ffmpeg.orig/libavutil/base64.c	2009-02-01 18:56:01.000000000 +0100
> > > > +++ ffmpeg/libavutil/base64.c	2009-02-05 23:17:00.000000000 +0100
> > > > @@ -98,3 +98,69 @@
> > > >  
> > > >      return ret;
> > > >  }
> > > > +
> > > > +#ifdef TEST
> > > > +
> > > > +#undef printf
> > > > +
> > > > +#define MAX_DATA_SIZE    1024
> > > > +#define MAX_ENCODED_SIZE 2048
> > > > +
> > > > +int test_encode_decode(const uint8_t *data, unsigned int data_size, const char *encoded_ref)
> > > > +{
> > > > +    char  encoded[MAX_ENCODED_SIZE];
> > > > +    uint8_t data2[MAX_DATA_SIZE];
> > > > +    int data2_size, max_data2_size = MAX_DATA_SIZE;
> > > > +
> > > > +    if (!av_base64_encode(encoded, MAX_ENCODED_SIZE, data, data_size)) {
> > > > +        printf("Failed: cannot encode the input data\n");
> > > > +        return 1;
> > > > +    }
> > > 
> > > > +    if (encoded_ref && strcmp(encoded, encoded_ref)) {
> > > > +        printf("Failed: encoded string differs from reference\n");
> > > > +        printf("Encoded:\n%s\n", encoded);
> > > > +        printf("Reference:\n%s\n", encoded_ref);
> > > > +        return 1;
> > > > +    }
> > > > +
> > > > +    if ((data2_size = av_base64_decode(data2, encoded, max_data2_size)) < 0) {
> > > > +        printf("Failed: cannot decode the encoded string\n");
> > > > +        printf("Encoded:\n%s\n", encoded);
> > > > +        return 1;
> > > > +    }
> > > 
> > > mergeable printf()
> > > 
> > > 
> > > > +    if (memcmp(data2, data, data_size)) {
> > > > +        printf("Failed: encoded/decoded data differs from original data\n");
> > > > +        return 1;
> > > > +    }
> > > > +
> > > > +    printf("Passed!\n");
> > > > +    return 0;
> > > > +}
> > > > +
> > > > +int main(void)
> > > > +{
> > > > +    int error_count = 0;
> > > > +    struct test {
> > > > +        const uint8_t *data;
> > > > +        int data_size;
> > > > +        const char *encoded_ref;
> > > > +    } tests[] = {
> > > > +        { "",        0, ""},
> > > > +        { "1",       1, "MQ=="},
> > > > +        { "22",      2, "MjI="},
> > > > +        { "333",     3, "MzMz"},
> > > > +        { "4444",    4, "NDQ0NA=="},
> > > > +        { "55555",   5, "NTU1NTU="},
> > > > +        { "666666",  6, "NjY2NjY2"},
> > > > +        { "abc:def", 7, "YWJjOmRlZg=="},
> > > > +    };
> > > 
> > > data_size is redundant
> > > 
> > > 
> > > > +
> > > > +    printf("Encoding/decoding tests\n");
> > > > +
> > > 
> > > > +    for (int i = 0 [...]
> > > 
> > > gcc 2.95 dislikes this
> > > also i think our coding rules say that C99 features that arent used
> > > in ffmpeg yet shouldnt be added lightly
> > 
> > New round, regards.
> 
> ok

Applied, regards.
-- 
FFmpeg = Faboulous and Free Minimalistic Portentous Erratic Geisha




More information about the ffmpeg-devel mailing list