#!/usr/bin/expect -f
# This file is part of Firejail project
# Copyright (C) 2014-2026 Firejail Authors
# License GPL v2

set timeout 3
spawn $env(SHELL)
match_max 100000

send -- "rm -fr ~/_firejail_test_dir\r"
after 100

send -- "firejail --profile=./mkdir.profile find ~/_firejail_test_dir\r"
expect {
	timeout {puts "TESTING ERROR 1.1\n";exit}
	"_firejail_test_dir/_firejail_test_file"
}
send -- "rm -rf ~/_firejail_test_dir\r"
after 100

send -- "firejail --profile=./mkdir.profile find /tmp/_firejail_test_dir\r"
expect {
	timeout {puts "TESTING ERROR 2.1\n";exit}
	"_firejail_test_dir/_firejail_test_file"
}
send -- "rm -rf /tmp/_firejail_test_dir\r"
after 100

set UID [exec id -u]
set fexist [file exist /run/user/$UID]
if { $fexist } {
	send -- "firejail --profile=./mkdir.profile find /run/user/$UID/_firejail_test_dir\r"
	expect {
		timeout {puts "TESTING ERROR 3.1\n";exit}
		"_firejail_test_dir/_firejail_test_file"
	}
	send -- "rm -rf /run/user/$UID/_firejail_test_dir\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"
