aboutsummaryrefslogtreecommitdiff
path: root/tests/unistd/misc.c
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-09-29 11:51:22 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-09-29 11:51:22 -0700
commit61221f3dd86360875f1a6ece4aebaa0a20bc025c (patch)
tree7ea64acb419554505a891a2b0b06537077216268 /tests/unistd/misc.c
parent51256ab4452f9b1aa3774ef2eece26faa652ab22 (diff)
parent4db117910eb13fc93d632dd4e3fb4cf127544538 (diff)
Merge pull request #1601 from inolen/idbfs
NODEFS and IDBFS support
Diffstat (limited to 'tests/unistd/misc.c')
-rw-r--r--tests/unistd/misc.c24
1 files changed, 16 insertions, 8 deletions
diff --git a/tests/unistd/misc.c b/tests/unistd/misc.c
index 5b0d63d2..2ca5b390 100644
--- a/tests/unistd/misc.c
+++ b/tests/unistd/misc.c
@@ -2,9 +2,17 @@
#include <errno.h>
#include <unistd.h>
#include <fcntl.h>
+#include <emscripten.h>
int main() {
- int f = open("/", O_RDONLY);
+ EM_ASM(
+ FS.mkdir('working');
+#if NODEFS
+ FS.mount(NODEFS, { root: '.' }, 'working');
+#endif
+ );
+
+ int f = open("working", O_RDONLY);
sync();
@@ -36,7 +44,7 @@ int main() {
printf(", errno: %d\n", errno);
errno = 0;
- printf("link: %d", link("/here", "/there"));
+ printf("link: %d", link("working/here", "working/there"));
printf(", errno: %d\n", errno);
errno = 0;
@@ -65,10 +73,10 @@ int main() {
char* exec_argv[] = {"arg", 0};
char* exec_env[] = {"a=b", 0};
- printf("execl: %d", execl("/program", "arg", 0));
+ printf("execl: %d", execl("working/program", "arg", 0));
printf(", errno: %d\n", errno);
errno = 0;
- printf("execle: %d", execle("/program", "arg", 0, exec_env));
+ printf("execle: %d", execle("working/program", "arg", 0, exec_env));
printf(", errno: %d\n", errno);
errno = 0;
printf("execlp: %d", execlp("program", "arg", 0));
@@ -84,16 +92,16 @@ int main() {
printf(", errno: %d\n", errno);
errno = 0;
- printf("chown(good): %d", chown("/", 123, 456));
+ printf("chown(good): %d", chown("working", 123, 456));
printf(", errno: %d\n", errno);
errno = 0;
- printf("chown(bad): %d", chown("/noexist", 123, 456));
+ printf("chown(bad): %d", chown("working/noexist", 123, 456));
printf(", errno: %d\n", errno);
errno = 0;
- printf("lchown(good): %d", lchown("/", 123, 456));
+ printf("lchown(good): %d", lchown("working", 123, 456));
printf(", errno: %d\n", errno);
errno = 0;
- printf("lchown(bad): %d", lchown("/noexist", 123, 456));
+ printf("lchown(bad): %d", lchown("working/noexist", 123, 456));
printf(", errno: %d\n", errno);
errno = 0;
printf("fchown(good): %d", fchown(f, 123, 456));