aboutsummaryrefslogtreecommitdiffstats
path: root/test/fs/mkdir.exp
blob: 59005e1a21412cfc2e07528b061b926558b44d00 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/usr/bin/expect -f
# This file is part of Firejail project
# Copyright (C) 2014-2020 Firejail Authors
# License GPL v2

set timeout 3
spawn $env(SHELL)
match_max 100000

send -- "firejail --profile=mkdir.profile find ~/.firejail_test\r"
expect {
	timeout {puts "TESTING ERROR 1.1\n";exit}
	"Warning: cannot create" { puts "TESTING ERROR 1.2\n";exit}
	"No such file or directory" { puts "TESTING ERROR 1.3\n";exit}
	".firejail_test/a/b/c/d.txt"
}
send -- "rm -rf ~/.firejail_test\r"
after 100

send -- "firejail --profile=mkdir.profile find /tmp/.firejail_test\r"
expect {
	timeout {puts "TESTING ERROR 2.1\n";exit}
	"Warning: cannot create" { puts "TESTING ERROR 2.2\n";exit}
	"No such file or directory" { puts "TESTING ERROR 2.3\n";exit}
	"/tmp/.firejail_test/a/b/c/d.txt"
}
send -- "rm -rf /tmp/.firejail_test\r"
after 100

set UID [exec id -u]
send -- "firejail --profile=mkdir.profile find /run/user/$UID/.firejail_test\r"
expect {
	timeout {puts "TESTING ERROR 3.1\n";exit}
	"Warning: cannot create" { puts "TESTING ERROR 3.2\n";exit}
	"No such file or directory" { puts "TESTING ERROR 3.3\n";exit}
	"/run/user/$UID/.firejail_test/a/b/c/d.txt"
}
send -- "rm -rf /run/user/$UID/.firejail_test\r"
after 100


send -- "firejail --profile=mkdir2.profile\r"
expect {
	timeout {puts "TESTING ERROR 4\n";exit}
	"only files or directories in user home, /tmp, or /run/user/<UID>"
}
after 100

puts "\nall done\n"