Exemplo n.º 1
0
void _test_read_write(char *seq, char mode[2]){
    FILE *fh;
    size_t seq_len = strlen(seq);
    fh = fopen(TEST_FILE, mode);
    size_t file_pos = ftell(fh);
    size_t pos = fencode(fh, (unsigned char *)seq);
    TEST_OK((seq_len + 1) / 2 == pos - file_pos);
    fflush(fh);
    fclose(fh);

    
    fh = fopen(TEST_FILE, "rb");
    //printf("%i:%i\n", file_pos, pos);
    char *read_seq = (char *)fdecode(fh, file_pos, pos);
    //printf("%s, %s\n", seq, read_seq);
    TEST_OK(!strcmp(seq, read_seq));
    free(read_seq);
    fclose(fh);
}
Exemplo n.º 2
0
int main(int argc, char *argv[])
{
    FILE *in, *out;

    if(strstr(argv[0], "dec") != 0)
        mode = DECODE;
    else
        mode = ENCODE;

    if ( mode == ENCODE ) {
        in = stdin;
        out = stdout;
    }
    else {
        in = stdin;
        out = stdout;
    }
    if ( argc < 2 )
        mode == ENCODE ? fencode(in, out) : fdecode(in, out);

    return 0;
}