Implementation of LZ-index for extracting text
[SXSI/TextCollection.git] / lzindex / test.c
1 #include "stdio.h"
2 #include "string.h"
3 #include "lztrie.h"
4
5 int main()
6 {
7     byte *text = (byte*)"ababacaaaaaaaaaaaaaaaaaaaffffffffffffffdddddddddssssssssssfffffffffffzzzbbbbbbbbbbbbbbbbbbbbbbbbbabababaccacacababababababababbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbaaaaaaaaaacccdsfffffffffffffffffffffffaslköfjaösldjföasjdgajsdföljasdkfljaölsdjkföskjfölakjdföklajdökfjlaösldjföaögoiubvoixcupvozucvpouizxcpovui,qwner.,qwenrqbwe,rbqwmerbmwerbm";
8     ulong n = strlen((char *)text);
9     ulong i;
10     byte *newt = 0;
11     ulong l = 0;
12
13     lztrie lz = buildLZTrie(text, 0, n);
14         
15     printf("extracting:\n");
16     extract(lz, 0, n, &newt, &l);
17     for (i = 0; i < n; ++i)
18         if (newt[i]  != text[i]) {
19             printf("texts differ at %lu\n", i);
20             exit(0);
21         }
22
23     return 0;
24 }