Update file-posix.c utest
[akaros.git] / user / utest / file-posix.c
1 #define _LARGEFILE64_SOURCE /* needed to use lseek64 */
2
3 #include <stdio.h> 
4 #include <sys/types.h>
5 #include <sys/stat.h>
6 #include <fcntl.h>
7 #include <parlib/arch/arch.h>
8 #include <unistd.h>
9 #include <errno.h>
10 #include <dirent.h>
11 #include <stdlib.h>
12 #include <string.h>
13
14 #include <utest/utest.h>
15
16 TEST_SUITE("FILE POSIX");
17
18 /* <--- Begin definition of test cases ---> */
19
20 bool test_openat(void)
21 {
22         int dfd = open("/dir1", O_RDONLY);
23         UT_ASSERT(dfd >= 0);
24
25         int ffd = openat(dfd, "f1.txt", O_RDWR);
26         UT_ASSERT(ffd >= 0, close(dfd));
27
28         close(ffd);
29         close(dfd);
30         return TRUE;
31 }
32
33 /* <--- End definition of test cases ---> */
34
35 struct utest utests[] = {
36         UTEST_REG(openat),
37 };
38 int num_utests = sizeof(utests) / sizeof(struct utest);
39
40 int main(int argc, char *argv[])
41 {
42         // Run test suite passing it all the args as whitelist of what tests to run.
43         char **whitelist = &argv[1];
44         int whitelist_len = argc - 1;
45         RUN_TEST_SUITE(utests, num_utests, whitelist, whitelist_len);
46 }