2020-11-09 05:23:58 +01:00
|
|
|
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
2019-04-30 09:53:09 +02:00
|
|
|
|
|
|
|
#include "tests.h"
|
|
|
|
#include "umask-util.h"
|
|
|
|
|
|
|
|
int main(int argc, char *argv[]) {
|
|
|
|
size_t n;
|
|
|
|
mode_t u;
|
|
|
|
|
|
|
|
test_setup_logging(LOG_DEBUG);
|
|
|
|
|
|
|
|
u = umask(0111);
|
|
|
|
|
|
|
|
n = 0;
|
|
|
|
RUN_WITH_UMASK(0123) {
|
|
|
|
assert_se(umask(000) == 0123);
|
|
|
|
n++;
|
|
|
|
}
|
|
|
|
|
|
|
|
assert_se(n == 1);
|
|
|
|
assert_se(umask(u) == 0111);
|
|
|
|
|
|
|
|
RUN_WITH_UMASK(0135) {
|
|
|
|
assert_se(umask(000) == 0135);
|
|
|
|
n++;
|
|
|
|
}
|
|
|
|
|
|
|
|
assert_se(n == 2);
|
|
|
|
assert_se(umask(0111) == u);
|
|
|
|
|
|
|
|
RUN_WITH_UMASK(0315) {
|
|
|
|
assert_se(umask(000) == 0315);
|
|
|
|
n++;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
assert_se(n == 3);
|
|
|
|
assert_se(umask(u) == 0111);
|
|
|
|
|
|
|
|
return EXIT_SUCCESS;
|
|
|
|
}
|