Ticket #424: umask-test.scm

File umask-test.scm, 678 bytes (added by Mario Domenech Goulart, 13 years ago)

Simple tests for umask

Line 
1(use posix test)
2
3(define (set-file-mask! mask)
4  (let ((test-file "foomask"))
5    (delete-file* test-file)
6    (set! (file-creation-mode) mask)
7    (with-output-to-file test-file (cut print ""))
8    (number->string (file-permissions test-file) 8)))
9
10(test-begin "umask")
11(test "100660" (set-file-mask! perm/irwxo))
12(test "100600" (set-file-mask! (bitwise-ior perm/irwxo perm/irwxg)))
13(test "100000" (set-file-mask! (bitwise-ior perm/irwxo perm/irwxg perm/irwxu)))
14
15(test "100664" (set-file-mask! perm/iwoth))
16(test "100644" (set-file-mask! (bitwise-ior perm/iwoth perm/iwgrp)))
17(test "100444" (set-file-mask! (bitwise-ior perm/iwoth perm/iwgrp perm/iwusr)))
18(test-end "umask")