test case for grab_file
authordinesh <dinesh@dinesh-laptop>
Tue, 12 Aug 2008 08:54:10 +0000 (14:24 +0530)
committerdinesh <dinesh@dinesh-laptop>
Tue, 12 Aug 2008 08:54:10 +0000 (14:24 +0530)
ccan/string/test/run-grab.c [new file with mode: 0644]
ccan/string/test/run.c
tools/create_dep_tar [new file with mode: 0755]

diff --git a/ccan/string/test/run-grab.c b/ccan/string/test/run-grab.c
new file mode 100644 (file)
index 0000000..cfd8b9b
--- /dev/null
@@ -0,0 +1,25 @@
+/* This is test for grab_file() function */
+
+/*
+ * Example:
+ * 
+ * void *grab_file(const void *ctx, const char *filename)
+ *     {
+ *     int fd; 
+ *     char *buffer;
+ * 
+ *     if (streq(filename, "-"))
+ *             fd = dup(STDIN_FILENO);
+ *     else
+ *             fd = open(filename, O_RDONLY, 0); 
+ *
+ *     if (fd < 0)
+ *             return NULL; 
+ *
+ *     buffer = grab_fd(ctx, fd);
+ *     close_noerr(fd);
+ *     return buffer;
+ *     }
+ */
+
+/* End of grab_file() test */
index 02403d24511300a68f05d182d68fa98f66a6503e..f68e7ec56c5c886293be9b5f8e4c086e6076ebfb 100644 (file)
@@ -27,6 +27,8 @@ int main(int argc, char *argv[])
        char **split, *str;
        void *ctx;
        char *strings[NUM_SUBSTRINGS * NUM_SUBSTRINGS];
+       int length;
+       struct stat st;
 
        n = 0;
        for (i = 0; i < NUM_SUBSTRINGS; i++) {
@@ -115,7 +117,16 @@ int main(int argc, char *argv[])
        ok1(talloc_parent(str) == ctx);
        talloc_free(ctx);
 
-
-       
+       str = grab_file(NULL, "ccan/string/test/run-grab.c");
+       split = strsplit(NULL, str, "\n", NULL);
+       length = strlen(split[0]);
+       ok1(streq(split[0], "/* This is test for grab_file() function */"));
+       for(i = 1; split[i]; i++)       
+               length += strlen(split[i]);
+       ok1(streq(split[i-1], "/* End of grab_file() test */"));
+       if (stat("ccan/string/test/run-grab.c", &st) != 0) 
+               err(1, "Could not stat self");
+       ok1(st.st_size == length);
+               
        return exit_status();
 }                              
diff --git a/tools/create_dep_tar b/tools/create_dep_tar
new file mode 100755 (executable)
index 0000000..d342812
Binary files /dev/null and b/tools/create_dep_tar differ