uwrap: Always enable logging
[uid_wrapper.git] / tests / test_getresuid.c
1 #include "config.h"
2
3 #include <stdarg.h>
4 #include <stddef.h>
5 #include <setjmp.h>
6 #include <cmocka.h>
7
8 #include <sys/types.h>
9 #include <unistd.h>
10 #include <errno.h>
11
12 #include <pwd.h>
13
14 static void test_uwrap_getresuid(void **state)
15 {
16         int rc;
17         uid_t u, ru, eu, su;
18
19         (void) state; /* unused */
20
21         rc = setresuid(0x4444, 0x5555, -1);
22         assert_return_code(rc, errno);
23
24         u = getuid();
25         assert_int_equal(u, 0x4444);
26
27         u = geteuid();
28         assert_int_equal(u, 0x5555);
29
30         rc = getresuid(&ru, &eu, &su);
31         assert_return_code(rc, errno);
32
33         assert_int_equal(ru, 0x4444);
34         assert_int_equal(eu, 0x5555);
35         assert_int_equal(su, 0);
36 }
37
38 int main(void) {
39         int rc;
40
41         const struct CMUnitTest uwrap_tests[] = {
42                 cmocka_unit_test(test_uwrap_getresuid),
43         };
44
45         rc = cmocka_run_group_tests(uwrap_tests, NULL, NULL);
46
47         return rc;
48 }