baaf506642134aafe1de920c830c4ab288db2640
[ccan] / ccan / grab_file / test / run-grab.c
1 /* This is test for grab_file() function
2  */
3 #include <ccan/grab_file/grab_file.h>
4 #include <stdlib.h>
5 #include <stdio.h>
6 #include <err.h>
7 #include <sys/stat.h>
8 #include <ccan/grab_file/grab_file.c>
9 #include <ccan/tap/tap.h>
10 #include <ccan/str_talloc/str_talloc.h>
11 #include <ccan/str/str.h>
12
13 int 
14 main(int argc, char *argv[])
15 {
16         unsigned int    i;
17         char            **split, *str;
18         int             length;
19         struct          stat st;
20
21         str = grab_file(NULL, "test/run-grab.c", NULL);
22         split = strsplit(NULL, str, "\n", NULL);
23         length = strlen(split[0]);
24         ok1(streq(split[0], "/* This is test for grab_file() function"));
25         for (i = 1; split[i]; i++)      
26                 length += strlen(split[i]);
27         ok1(streq(split[i-1], "/* End of grab_file() test */"));
28         if (stat("test/run-grab.c", &st) != 0) 
29                 /* FIXME: ditto */
30                 if (stat("ccan/grab_file/test/run-grab.c", &st) != 0) 
31                         err(1, "Could not stat self");
32         ok1(st.st_size == length + i);
33         
34         return 0;
35 }
36
37 /* End of grab_file() test */