aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-05-16 11:53:13 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-05-16 11:53:13 -0700
commit1a5990162a3f678ba76e017d81c34ba67df97c53 (patch)
tree53588017313280c74f901f9c4df9e4080c319cf8 /tests
parent4de54e3bece9a51a69bd46076acaa7746c1fa996 (diff)
parentcd3320992885c2f5fdd4f10b058c6d633d26cb74 (diff)
Merge pull request #1173 from manuels/incoming
Fix bug in rename() that occures if new filename starts with the old filename
Diffstat (limited to 'tests')
-rwxr-xr-xtests/runner.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/runner.py b/tests/runner.py
index 1ff917d0..87eab8c6 100755
--- a/tests/runner.py
+++ b/tests/runner.py
@@ -3404,6 +3404,35 @@ Exiting setjmp function, level: 0, prev_jmp: -1
'''
self.do_run(src, 'z:1*', force_c=True)
+ def test_rename(self):
+ src = '''
+ #include <stdio.h>
+ #include <sys/stat.h>
+ #include <sys/types.h>
+ #include <assert.h>
+
+ int main() {
+ int err;
+ FILE* fid;
+
+ err = mkdir("/foo", 0777);
+ err = mkdir("/bar", 0777);
+ fid = fopen("/foo/bar", "w+");
+ fclose(fid);
+
+ err = rename("/foo/bar", "/foo/bar2");
+ printf("%d\\n", err);
+
+ err = rename("/foo", "/foo/foo");
+ printf("%d\\n", err);
+
+ err = rename("/foo", "/bar/foo");
+ printf("%d\\n", err);
+ return 0;
+ }
+ '''
+ self.do_run(src, '0\n-1\n0\n', force_c=True)
+
def test_alloca_stack(self):
if self.emcc_args is None: return # too slow in other modes