mirror of
https://github.com/fsquillace/junest.git
synced 2026-01-23 02:34:30 +00:00
Add option to specify location of backend command
This commit is contained in:
parent
348b73ce73
commit
09b9c644d9
8 changed files with 273 additions and 148 deletions
|
|
@ -32,20 +32,28 @@ function init_mocks() {
|
|||
echo "chroot_cmd $@"
|
||||
}
|
||||
GROOT=chroot_cmd
|
||||
mychroot() {
|
||||
echo mychroot $@
|
||||
}
|
||||
}
|
||||
|
||||
function test_run_env_as_groot_cmd(){
|
||||
assertCommandSuccess run_env_as_groot "" "false" pwd
|
||||
assertCommandSuccess run_env_as_groot "" "" "false" pwd
|
||||
assertEquals "chroot_cmd -b $HOME -b /tmp -b /proc -b /sys -b /dev $JUNEST_HOME /bin/sh --login -c pwd" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
function test_run_env_as_groot_no_cmd(){
|
||||
assertCommandSuccess run_env_as_groot "" "false" ""
|
||||
assertCommandSuccess run_env_as_groot "" "" "false" ""
|
||||
assertEquals "chroot_cmd -b $HOME -b /tmp -b /proc -b /sys -b /dev $JUNEST_HOME /bin/sh --login -c /bin/sh --login" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
function test_run_env_as_groot_with_backend_command(){
|
||||
assertCommandSuccess run_env_as_groot "mychroot" "" "false" ""
|
||||
assertEquals "mychroot -b $HOME -b /tmp -b /proc -b /sys -b /dev $JUNEST_HOME /bin/sh --login -c /bin/sh --login" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
function test_run_env_as_groot_no_copy(){
|
||||
assertCommandSuccess run_env_as_groot "" "true" pwd
|
||||
assertCommandSuccess run_env_as_groot "" "" "true" pwd
|
||||
assertEquals "chroot_cmd -b $HOME -b /tmp -b /proc -b /sys -b /dev $JUNEST_HOME /bin/sh --login -c pwd" "$(cat $STDOUTF)"
|
||||
|
||||
[[ ! -e ${JUNEST_HOME}/etc/hosts ]]
|
||||
|
|
@ -60,27 +68,32 @@ function test_run_env_as_groot_no_copy(){
|
|||
|
||||
function test_run_env_as_groot_nested_env(){
|
||||
JUNEST_ENV=1
|
||||
assertCommandFailOnStatus 106 run_env_as_groot "" "false" ""
|
||||
assertCommandFailOnStatus 106 run_env_as_groot "" "" "false" ""
|
||||
unset JUNEST_ENV
|
||||
}
|
||||
|
||||
function test_run_env_as_groot_cmd_with_backend_args(){
|
||||
assertCommandSuccess run_env_as_groot "-n -b /home/blah" "false" pwd
|
||||
assertCommandSuccess run_env_as_groot "" "-n -b /home/blah" "false" pwd
|
||||
assertEquals "chroot_cmd -b $HOME -b /tmp -b /proc -b /sys -b /dev -n -b /home/blah $JUNEST_HOME /bin/sh --login -c pwd" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
function test_run_env_as_chroot_cmd(){
|
||||
assertCommandSuccess run_env_as_chroot "" "false" pwd
|
||||
assertCommandSuccess run_env_as_chroot "" "" "false" pwd
|
||||
assertEquals "chroot_cmd $JUNEST_HOME /bin/sh --login -c pwd" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
function test_run_env_as_chroot_no_cmd(){
|
||||
assertCommandSuccess run_env_as_chroot "" "false" ""
|
||||
assertCommandSuccess run_env_as_chroot "" "" "false" ""
|
||||
assertEquals "chroot_cmd $JUNEST_HOME /bin/sh --login -c /bin/sh --login" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
function test_run_env_as_chroot_with_backend_command(){
|
||||
assertCommandSuccess run_env_as_chroot "mychroot" "" "false" ""
|
||||
assertEquals "mychroot $JUNEST_HOME /bin/sh --login -c /bin/sh --login" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
function test_run_env_as_chroot_no_copy(){
|
||||
assertCommandSuccess run_env_as_chroot "" "true" pwd
|
||||
assertCommandSuccess run_env_as_chroot "" "" "true" pwd
|
||||
assertEquals "chroot_cmd $JUNEST_HOME /bin/sh --login -c pwd" "$(cat $STDOUTF)"
|
||||
|
||||
[[ ! -e ${JUNEST_HOME}/etc/hosts ]]
|
||||
|
|
@ -95,12 +108,12 @@ function test_run_env_as_chroot_no_copy(){
|
|||
|
||||
function test_run_env_as_choot_nested_env(){
|
||||
JUNEST_ENV=1
|
||||
assertCommandFailOnStatus 106 run_env_as_chroot "" "false" ""
|
||||
assertCommandFailOnStatus 106 run_env_as_chroot "" "" "false" ""
|
||||
unset JUNEST_ENV
|
||||
}
|
||||
|
||||
function test_run_env_as_chroot_cmd_with_backend_args(){
|
||||
assertCommandSuccess run_env_as_chroot "-n -b /home/blah" "false" pwd
|
||||
assertCommandSuccess run_env_as_chroot "" "-n -b /home/blah" "false" pwd
|
||||
assertEquals "chroot_cmd -n -b /home/blah $JUNEST_HOME /bin/sh --login -c pwd" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -38,40 +38,46 @@ function setup_env(){
|
|||
echo "setup_env($1)"
|
||||
}
|
||||
function run_env_as_proot_fakeroot(){
|
||||
local backend_args="$1"
|
||||
local no_copy_files="$2"
|
||||
shift 2
|
||||
echo "run_env_as_proot_fakeroot($backend_args,$no_copy_files,$@)"
|
||||
local backend_command="$1"
|
||||
local backend_args="$2"
|
||||
local no_copy_files="$3"
|
||||
shift 3
|
||||
echo "run_env_as_proot_fakeroot($backend_command,$backend_args,$no_copy_files,$@)"
|
||||
}
|
||||
function run_env_as_groot(){
|
||||
local backend_args="$1"
|
||||
local no_copy_files="$2"
|
||||
shift 2
|
||||
echo "run_env_as_groot($backend_args,$no_copy_files,$@)"
|
||||
local backend_command="$1"
|
||||
local backend_args="$2"
|
||||
local no_copy_files="$3"
|
||||
shift 3
|
||||
echo "run_env_as_groot($backend_command,$backend_args,$no_copy_files,$@)"
|
||||
}
|
||||
function run_env_as_chroot(){
|
||||
local backend_args="$1"
|
||||
local no_copy_files="$2"
|
||||
shift 2
|
||||
echo "run_env_as_chroot($backend_args,$no_copy_files,$@)"
|
||||
local backend_command="$1"
|
||||
local backend_args="$2"
|
||||
local no_copy_files="$3"
|
||||
shift 3
|
||||
echo "run_env_as_chroot($backend_command,$backend_args,$no_copy_files,$@)"
|
||||
}
|
||||
function run_env_as_proot_user(){
|
||||
local backend_args="$1"
|
||||
local no_copy_files="$2"
|
||||
shift 2
|
||||
echo "run_env_as_proot_user($backend_args,$no_copy_files,$@)"
|
||||
local backend_command="$1"
|
||||
local backend_args="$2"
|
||||
local no_copy_files="$3"
|
||||
shift 3
|
||||
echo "run_env_as_proot_user($backend_command,$backend_args,$no_copy_files,$@)"
|
||||
}
|
||||
function run_env_as_bwrap_fakeroot(){
|
||||
local backend_args="$1"
|
||||
local no_copy_files="$2"
|
||||
shift 2
|
||||
echo "run_env_as_bwrap_fakeroot($backend_args,$no_copy_files,$@)"
|
||||
local backend_command="$1"
|
||||
local backend_args="$2"
|
||||
local no_copy_files="$3"
|
||||
shift 3
|
||||
echo "run_env_as_bwrap_fakeroot($backend_command,$backend_args,$no_copy_files,$@)"
|
||||
}
|
||||
function run_env_as_bwrap_user(){
|
||||
local backend_args="$1"
|
||||
local no_copy_files="$2"
|
||||
shift 2
|
||||
echo "run_env_as_bwrap_user($backend_args,$no_copy_files,$@)"
|
||||
local backend_command="$1"
|
||||
local backend_args="$2"
|
||||
local no_copy_files="$3"
|
||||
shift 3
|
||||
echo "run_env_as_bwrap_user($backend_command,$backend_args,$no_copy_files,$@)"
|
||||
}
|
||||
|
||||
function test_help(){
|
||||
|
|
@ -139,20 +145,25 @@ function test_setup_env(){
|
|||
|
||||
function test_run_env_as_proot_fakeroot(){
|
||||
assertCommandSuccess main p -f
|
||||
assertEquals "run_env_as_proot_fakeroot(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_fakeroot(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main proot --fakeroot
|
||||
assertEquals "run_env_as_proot_fakeroot(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_fakeroot(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main p -f -n
|
||||
assertEquals "run_env_as_proot_fakeroot(,true,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_fakeroot(,,true,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main p -f --backend-command blah
|
||||
assertEquals "run_env_as_proot_fakeroot(blah,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main proot -f --backend-command blah
|
||||
assertEquals "run_env_as_proot_fakeroot(blah,,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main proot -f -b "-b arg"
|
||||
assertEquals "run_env_as_proot_fakeroot(-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_fakeroot(,-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main proot -f -b "-b arg" -- command -kv
|
||||
assertEquals "run_env_as_proot_fakeroot(-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_fakeroot(,-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main proot -f command --as
|
||||
assertEquals "run_env_as_proot_fakeroot(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_fakeroot(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main proot -f -- command --as
|
||||
assertEquals "run_env_as_proot_fakeroot(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_fakeroot(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
|
||||
is_env_installed(){
|
||||
return 1
|
||||
|
|
@ -162,18 +173,23 @@ function test_run_env_as_proot_fakeroot(){
|
|||
|
||||
function test_run_env_as_user(){
|
||||
assertCommandSuccess main proot
|
||||
assertEquals "run_env_as_proot_user(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_user(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main p -n
|
||||
assertEquals "run_env_as_proot_user(,true,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_user(,,true,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main p --backend-command blah
|
||||
assertEquals "run_env_as_proot_user(blah,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main proot --backend-command blah
|
||||
assertEquals "run_env_as_proot_user(blah,,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main proot -b "-b arg"
|
||||
assertEquals "run_env_as_proot_user(-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_user(,-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main proot -b "-b arg" -- command -ll
|
||||
assertEquals "run_env_as_proot_user(-b arg,false,command -ll)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_user(,-b arg,false,command -ll)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main proot command -ls
|
||||
assertEquals "run_env_as_proot_user(,false,command -ls)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_user(,,false,command -ls)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main proot -- command -ls
|
||||
assertEquals "run_env_as_proot_user(,false,command -ls)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_proot_user(,,false,command -ls)" "$(cat $STDOUTF)"
|
||||
|
||||
is_env_installed(){
|
||||
return 1
|
||||
|
|
@ -183,15 +199,21 @@ function test_run_env_as_user(){
|
|||
|
||||
function test_run_env_as_groot(){
|
||||
assertCommandSuccess main g
|
||||
assertEquals "run_env_as_groot(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_groot(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main g -n
|
||||
assertEquals "run_env_as_groot(,true,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_groot(,,true,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main g -b "-b arg"
|
||||
assertEquals "run_env_as_groot(-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_groot(,-b arg,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main g --backend-command blah
|
||||
assertEquals "run_env_as_groot(blah,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main groot --backend-command blah
|
||||
assertEquals "run_env_as_groot(blah,,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main groot command
|
||||
assertEquals "run_env_as_groot(,false,command)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_groot(,,false,command)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main groot -- command
|
||||
assertEquals "run_env_as_groot(,false,command)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_groot(,,false,command)" "$(cat $STDOUTF)"
|
||||
|
||||
is_env_installed(){
|
||||
return 1
|
||||
|
|
@ -201,13 +223,19 @@ function test_run_env_as_groot(){
|
|||
|
||||
function test_run_env_as_chroot(){
|
||||
assertCommandSuccess main r
|
||||
assertEquals "run_env_as_chroot(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_chroot(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main r -b "-b arg"
|
||||
assertEquals "run_env_as_chroot(-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_chroot(,-b arg,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main r --backend-command blah
|
||||
assertEquals "run_env_as_chroot(blah,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main root --backend-command blah
|
||||
assertEquals "run_env_as_chroot(blah,,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main root command
|
||||
assertEquals "run_env_as_chroot(,false,command)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_chroot(,,false,command)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main root -- command
|
||||
assertEquals "run_env_as_chroot(,false,command)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_chroot(,,false,command)" "$(cat $STDOUTF)"
|
||||
|
||||
is_env_installed(){
|
||||
return 1
|
||||
|
|
@ -217,34 +245,39 @@ function test_run_env_as_chroot(){
|
|||
|
||||
function test_run_env_as_bwrap_fakeroot(){
|
||||
assertCommandSuccess main n -f
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns -f
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns -n -f
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,true,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,,true,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main ns -f -b "-b arg"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns -f -b "-b arg" -- command -kv
|
||||
assertEquals "run_env_as_bwrap_fakeroot(-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns -f command --as
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns -f -- command --as
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main ns -f --backend-command blah
|
||||
assertEquals "run_env_as_bwrap_fakeroot(blah,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main -f --backend-command blah
|
||||
assertEquals "run_env_as_bwrap_fakeroot(blah,,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main -f
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main -f
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main -f -b "-b arg"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main -f -b "-b arg" -- command -kv
|
||||
assertEquals "run_env_as_bwrap_fakeroot(-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main -f command --as
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main -f -- command --as
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_fakeroot(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
|
||||
is_env_installed(){
|
||||
return 1
|
||||
|
|
@ -254,34 +287,39 @@ function test_run_env_as_bwrap_fakeroot(){
|
|||
|
||||
function test_run_env_as_bwrap_user(){
|
||||
assertCommandSuccess main n
|
||||
assertEquals "run_env_as_bwrap_user(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns
|
||||
assertEquals "run_env_as_bwrap_user(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns -n
|
||||
assertEquals "run_env_as_bwrap_user(,true,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,,true,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main ns -b "-b arg"
|
||||
assertEquals "run_env_as_bwrap_user(-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns -b "-b arg" -- command -kv
|
||||
assertEquals "run_env_as_bwrap_user(-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns command --as
|
||||
assertEquals "run_env_as_bwrap_user(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main ns -- command --as
|
||||
assertEquals "run_env_as_bwrap_user(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main ns --backend-command blah
|
||||
assertEquals "run_env_as_bwrap_user(blah,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main --backend-command blah
|
||||
assertEquals "run_env_as_bwrap_user(blah,,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main
|
||||
assertEquals "run_env_as_bwrap_user(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main
|
||||
assertEquals "run_env_as_bwrap_user(,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,,false,)" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess main -b "-b arg"
|
||||
assertEquals "run_env_as_bwrap_user(-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,-b arg,false,)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main -b "-b arg" -- command -kv
|
||||
assertEquals "run_env_as_bwrap_user(-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,-b arg,false,command -kv)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main command --as
|
||||
assertEquals "run_env_as_bwrap_user(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertCommandSuccess main -- command --as
|
||||
assertEquals "run_env_as_bwrap_user(,false,command --as)" "$(cat $STDOUTF)"
|
||||
assertEquals "run_env_as_bwrap_user(,,false,command --as)" "$(cat $STDOUTF)"
|
||||
|
||||
is_env_installed(){
|
||||
return 1
|
||||
|
|
|
|||
|
|
@ -18,6 +18,9 @@ function init_mocks() {
|
|||
function bwrap_cmd(){
|
||||
echo "bwrap $@"
|
||||
}
|
||||
function mybwrap(){
|
||||
echo "mybwrap $@"
|
||||
}
|
||||
}
|
||||
|
||||
function setUp(){
|
||||
|
|
@ -100,22 +103,37 @@ function test_is_user_namespace_enabled_with_userns_clone_file_enabled(){
|
|||
}
|
||||
|
||||
function test_run_env_as_bwrap_fakeroot() {
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "" "false"
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "" "" "false"
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try --uid 0 /bin/sh --login" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
}
|
||||
|
||||
function test_run_env_as_bwrap_fakeroot_with_backend_command() {
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "mybwrap" "" "false"
|
||||
assertEquals "mybwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try --uid 0 /bin/sh --login" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
}
|
||||
|
||||
function test_run_env_as_bwrap_user() {
|
||||
assertCommandSuccess run_env_as_bwrap_user "" "false"
|
||||
assertCommandSuccess run_env_as_bwrap_user "" "" "false"
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try /bin/sh --login" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
_test_copy_remaining_files
|
||||
}
|
||||
|
||||
function test_run_env_as_bwrap_user_with_backend_command() {
|
||||
assertCommandSuccess run_env_as_bwrap_user "mybwrap" "" "false"
|
||||
assertEquals "mybwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try /bin/sh --login" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
_test_copy_remaining_files
|
||||
}
|
||||
|
||||
function test_run_env_as_bwrap_fakeroot_no_copy() {
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "" "true" ""
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "" "" "true" ""
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try --uid 0 /bin/sh --login" "$(cat $STDOUTF)"
|
||||
|
||||
[[ ! -e ${JUNEST_HOME}/etc/hosts ]]
|
||||
|
|
@ -141,7 +159,7 @@ function test_run_env_as_bwrap_fakeroot_no_copy() {
|
|||
}
|
||||
|
||||
function test_run_env_as_bwrap_user_no_copy() {
|
||||
assertCommandSuccess run_env_as_bwrap_user "" "true" ""
|
||||
assertCommandSuccess run_env_as_bwrap_user "" "" "true" ""
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try /bin/sh --login" "$(cat $STDOUTF)"
|
||||
|
||||
[[ ! -e ${JUNEST_HOME}/etc/hosts ]]
|
||||
|
|
@ -167,14 +185,14 @@ function test_run_env_as_bwrap_user_no_copy() {
|
|||
}
|
||||
|
||||
function test_run_env_as_bwrap_fakeroot_with_backend_args() {
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "--bind /usr /usr" "false"
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "" "--bind /usr /usr" "false"
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try --uid 0 --bind /usr /usr /bin/sh --login" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
}
|
||||
|
||||
function test_run_env_as_bwrap_user_with_backend_args() {
|
||||
assertCommandSuccess run_env_as_bwrap_user "--bind /usr /usr" "false"
|
||||
assertCommandSuccess run_env_as_bwrap_user "" "--bind /usr /usr" "false"
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try --bind /usr /usr /bin/sh --login" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
|
|
@ -182,14 +200,14 @@ function test_run_env_as_bwrap_user_with_backend_args() {
|
|||
}
|
||||
|
||||
function test_run_env_as_bwrap_fakeroot_with_command() {
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "" "false" "ls -la"
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "" "" "false" "ls -la"
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try --uid 0 /bin/sh --login -c \"ls -la\"" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
}
|
||||
|
||||
function test_run_env_as_bwrap_user_with_command() {
|
||||
assertCommandSuccess run_env_as_bwrap_user "" "false" "ls -la"
|
||||
assertCommandSuccess run_env_as_bwrap_user "" "" "false" "ls -la"
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try /bin/sh --login -c \"ls -la\"" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
|
|
@ -197,14 +215,14 @@ function test_run_env_as_bwrap_user_with_command() {
|
|||
}
|
||||
|
||||
function test_run_env_as_bwrap_fakeroot_with_backend_args_and_command() {
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "--bind /usr /usr" "false" "ls -la"
|
||||
assertCommandSuccess run_env_as_bwrap_fakeroot "" "--bind /usr /usr" "false" "ls -la"
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try --uid 0 --bind /usr /usr /bin/sh --login -c \"ls -la\"" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
}
|
||||
|
||||
function test_run_env_as_bwrap_user_with_backend_args_and_command() {
|
||||
assertCommandSuccess run_env_as_bwrap_user "--bind /usr /usr" "false" "ls -la"
|
||||
assertCommandSuccess run_env_as_bwrap_user "" "--bind /usr /usr" "false" "ls -la"
|
||||
assertEquals "bwrap --bind $JUNEST_HOME / --bind $HOME $HOME --bind /tmp /tmp --proc /proc --dev /dev --unshare-user-try --bind /usr /usr /bin/sh --login -c \"ls -la\"" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
|
|
@ -213,13 +231,13 @@ function test_run_env_as_bwrap_user_with_backend_args_and_command() {
|
|||
|
||||
function test_run_env_as_bwrap_fakeroot_nested_env(){
|
||||
JUNEST_ENV=1
|
||||
assertCommandFailOnStatus 106 run_env_as_bwrap_fakeroot "" "false" ""
|
||||
assertCommandFailOnStatus 106 run_env_as_bwrap_fakeroot "" "" "false" ""
|
||||
unset JUNEST_ENV
|
||||
}
|
||||
|
||||
function test_run_env_as_bwrap_user_nested_env(){
|
||||
JUNEST_ENV=1
|
||||
assertCommandFailOnStatus 106 run_env_as_bwrap_user "" "false" ""
|
||||
assertCommandFailOnStatus 106 run_env_as_bwrap_user "" "" "false" ""
|
||||
unset JUNEST_ENV
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -51,22 +51,37 @@ function test_run_env_as_proot_user(){
|
|||
_run_env_with_qemu() {
|
||||
echo $@
|
||||
}
|
||||
assertCommandSuccess run_env_as_proot_user "-k 3.10" "false" "/usr/bin/mkdir" "-v" "/newdir2"
|
||||
assertCommandSuccess run_env_as_proot_user "" "-k 3.10" "false" "/usr/bin/mkdir" "-v" "/newdir2"
|
||||
assertEquals "-b $HOME -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10 /usr/bin/mkdir -v /newdir2" "$(cat $STDOUTF)"
|
||||
|
||||
SH=("/usr/bin/echo")
|
||||
assertCommandSuccess run_env_as_proot_user "-k 3.10" "false"
|
||||
assertCommandSuccess run_env_as_proot_user "" "-k 3.10" "false"
|
||||
assertEquals "-b $HOME -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
_test_copy_remaining_files
|
||||
}
|
||||
|
||||
function test_run_env_as_proot_user_with_backend_command(){
|
||||
_run_env_with_qemu() {
|
||||
echo $@
|
||||
}
|
||||
assertCommandSuccess run_env_as_proot_user "myproot" "-k 3.10" "false" "/usr/bin/mkdir" "-v" "/newdir2"
|
||||
assertEquals "myproot -b $HOME -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10 /usr/bin/mkdir -v /newdir2" "$(cat $STDOUTF)"
|
||||
|
||||
SH=("/usr/bin/echo")
|
||||
assertCommandSuccess run_env_as_proot_user "myproot" "-k 3.10" "false"
|
||||
assertEquals "myproot -b $HOME -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
_test_copy_remaining_files
|
||||
}
|
||||
|
||||
function test_run_env_as_proot_user_no_copy(){
|
||||
_run_env_with_qemu() {
|
||||
echo $@
|
||||
}
|
||||
assertCommandSuccess run_env_as_proot_user "-k 3.10" "true" "/usr/bin/mkdir" "-v" "/newdir2"
|
||||
assertCommandSuccess run_env_as_proot_user "" "-k 3.10" "true" "/usr/bin/mkdir" "-v" "/newdir2"
|
||||
assertEquals "-b $HOME -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10 /usr/bin/mkdir -v /newdir2" "$(cat $STDOUTF)"
|
||||
|
||||
[[ ! -e ${JUNEST_HOME}/etc/hosts ]]
|
||||
|
|
@ -93,7 +108,7 @@ function test_run_env_as_proot_user_no_copy(){
|
|||
|
||||
function test_run_env_as_proot_user_nested_env(){
|
||||
JUNEST_ENV=1
|
||||
assertCommandFailOnStatus 106 run_env_as_proot_user "" "false"
|
||||
assertCommandFailOnStatus 106 run_env_as_proot_user "" "" "false"
|
||||
unset JUNEST_ENV
|
||||
}
|
||||
|
||||
|
|
@ -101,19 +116,33 @@ function test_run_env_as_proot_fakeroot(){
|
|||
_run_env_with_qemu() {
|
||||
echo $@
|
||||
}
|
||||
assertCommandSuccess run_env_as_proot_fakeroot "-k 3.10" "false" "/usr/bin/mkdir" "-v" "/newdir2"
|
||||
assertCommandSuccess run_env_as_proot_fakeroot "" "-k 3.10" "false" "/usr/bin/mkdir" "-v" "/newdir2"
|
||||
assertEquals "-0 -b ${HOME} -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10 /usr/bin/mkdir -v /newdir2" "$(cat $STDOUTF)"
|
||||
|
||||
SH=("/usr/bin/echo")
|
||||
assertCommandSuccess run_env_as_proot_fakeroot "-k 3.10" "false"
|
||||
assertCommandSuccess run_env_as_proot_fakeroot "" "-k 3.10" "false"
|
||||
assertEquals "-0 -b ${HOME} -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
}
|
||||
|
||||
function test_run_env_as_proot_fakeroot_with_backend_command(){
|
||||
_run_env_with_qemu() {
|
||||
echo $@
|
||||
}
|
||||
assertCommandSuccess run_env_as_proot_fakeroot "myproot" "-k 3.10" "false" "/usr/bin/mkdir" "-v" "/newdir2"
|
||||
assertEquals "myproot -0 -b ${HOME} -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10 /usr/bin/mkdir -v /newdir2" "$(cat $STDOUTF)"
|
||||
|
||||
SH=("/usr/bin/echo")
|
||||
assertCommandSuccess run_env_as_proot_fakeroot "myproot" "-k 3.10" "false"
|
||||
assertEquals "myproot -0 -b ${HOME} -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10" "$(cat $STDOUTF)"
|
||||
|
||||
_test_copy_common_files
|
||||
}
|
||||
|
||||
function test_run_env_as_proot_fakeroot_nested_env(){
|
||||
JUNEST_ENV=1
|
||||
assertCommandFailOnStatus 106 run_env_as_proot_fakeroot "" "false" ""
|
||||
assertCommandFailOnStatus 106 run_env_as_proot_fakeroot "" "" "false" ""
|
||||
unset JUNEST_ENV
|
||||
}
|
||||
|
||||
|
|
@ -121,7 +150,7 @@ function test_run_env_with_quotes(){
|
|||
_run_env_with_qemu() {
|
||||
echo $@
|
||||
}
|
||||
assertCommandSuccess run_env_as_proot_user "-k 3.10" "false" "bash" "-c" "/usr/bin/mkdir -v /newdir2"
|
||||
assertCommandSuccess run_env_as_proot_user "" "-k 3.10" "false" "bash" "-c" "/usr/bin/mkdir -v /newdir2"
|
||||
assertEquals "-b ${HOME} -b /tmp -b /proc -b /sys -b /dev -r ${JUNEST_HOME} -k 3.10 bash -c /usr/bin/mkdir -v /newdir2" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
|
|
@ -131,10 +160,10 @@ function test_run_env_with_proot_args(){
|
|||
echo $@
|
||||
}
|
||||
|
||||
assertCommandSuccess _run_env_with_proot --help
|
||||
assertCommandSuccess _run_env_with_proot "" "--help"
|
||||
assertEquals "--help /bin/sh --login" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandSuccess _run_env_with_proot --help mycommand
|
||||
assertCommandSuccess _run_env_with_proot "" "--help" mycommand
|
||||
assertEquals "--help /bin/sh --login -c mycommand" "$(cat $STDOUTF)"
|
||||
|
||||
assertCommandFail _run_env_with_proot
|
||||
|
|
@ -152,7 +181,7 @@ function test_qemu() {
|
|||
echo $@
|
||||
}
|
||||
|
||||
RANDOM=100 ARCH=x86_64 assertCommandSuccess _run_env_with_qemu ""
|
||||
RANDOM=100 ARCH=x86_64 assertCommandSuccess _run_env_with_qemu "" ""
|
||||
assertEquals "$(echo -e "-s $JUNEST_HOME/bin/qemu-arm-static-x86_64 /tmp/qemu-arm-static-x86_64-100\n-q /tmp/qemu-arm-static-x86_64-100")" "$(cat $STDOUTF)"
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue