mirror of
https://github.com/fsquillace/junest.git
synced 2026-01-23 10:35:36 +00:00
181 lines
5.6 KiB
Bash
Executable file
181 lines
5.6 KiB
Bash
Executable file
#!/bin/bash
|
|
source "$(dirname $0)/utils.sh"
|
|
|
|
source $(dirname $0)/../bin/junest -h &> /dev/null
|
|
|
|
# Disable the exiterr
|
|
set +e
|
|
|
|
function oneTimeSetUp(){
|
|
setUpUnitTests
|
|
}
|
|
|
|
function setUp(){
|
|
function is_env_installed(){
|
|
return 0
|
|
}
|
|
}
|
|
|
|
## Mock functions ##
|
|
function usage(){
|
|
echo "usage"
|
|
}
|
|
function version(){
|
|
echo "version"
|
|
}
|
|
function build_image_env(){
|
|
local disable_validation=$1
|
|
local skip_root_tests=$2
|
|
echo "build_image_env($disable_validation,$skip_root_tests)"
|
|
}
|
|
function check_env(){
|
|
local env_home=$1
|
|
local cmd_script=$2
|
|
local skip_root_tests=$3
|
|
echo "check_env($env_home,$cmd_script,$skip_root_tests)"
|
|
}
|
|
function delete_env(){
|
|
echo "delete_env"
|
|
}
|
|
function setup_env_from_file(){
|
|
echo "setup_env_from_file($1)"
|
|
}
|
|
function setup_env(){
|
|
echo "setup_env($1)"
|
|
}
|
|
function run_env_as_fakeroot(){
|
|
local proot_args="$1"
|
|
shift
|
|
echo "run_env_as_fakeroot($proot_args,$@)"
|
|
}
|
|
function run_env_as_root(){
|
|
echo "run_env_as_root $@"
|
|
}
|
|
function run_env_as_user(){
|
|
local proot_args="$1"
|
|
shift
|
|
echo "run_env_as_user($proot_args,$@)"
|
|
}
|
|
|
|
function test_help(){
|
|
assertCommandSuccess cli -h
|
|
assertEquals "usage" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --help
|
|
assertEquals "usage" "$(cat $STDOUTF)"
|
|
}
|
|
function test_version(){
|
|
assertCommandSuccess cli -v
|
|
assertEquals "version" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --version
|
|
assertEquals "version" "$(cat $STDOUTF)"
|
|
}
|
|
function test_build_image_env(){
|
|
assertCommandSuccess cli -b
|
|
assertEquals "build_image_env(false,false)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --build-image
|
|
assertEquals "build_image_env(false,false)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli -b -s
|
|
assertEquals "build_image_env(false,true)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli -b -n
|
|
assertEquals "build_image_env(true,false)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli -b -n -s
|
|
assertEquals "build_image_env(true,true)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --build-image --disable-validation --skip-root-tests
|
|
assertEquals "build_image_env(true,true)" "$(cat $STDOUTF)"
|
|
}
|
|
function test_check_env(){
|
|
assertCommandSuccess cli -c myscript
|
|
assertEquals "check_env(${JUNEST_HOME},myscript,false)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --check myscript
|
|
assertEquals "check_env(${JUNEST_HOME},myscript,false)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli -c myscript -s
|
|
assertEquals "check_env(${JUNEST_HOME},myscript,true)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --check myscript --skip-root-tests
|
|
assertEquals "check_env(${JUNEST_HOME},myscript,true)" "$(cat $STDOUTF)"
|
|
}
|
|
function test_delete_env(){
|
|
assertCommandSuccess cli -d
|
|
assertEquals "delete_env" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --delete
|
|
assertEquals "delete_env" "$(cat $STDOUTF)"
|
|
}
|
|
function test_setup_env_from_file(){
|
|
is_env_installed(){
|
|
return 1
|
|
}
|
|
assertCommandSuccess cli -i myimage
|
|
assertEquals "$(echo -e "setup_env_from_file(myimage)\nrun_env_as_user(,)")" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --setup-from-file myimage
|
|
assertEquals "$(echo -e "setup_env_from_file(myimage)\nrun_env_as_user(,)")" "$(cat $STDOUTF)"
|
|
|
|
is_env_installed(){
|
|
return 0
|
|
}
|
|
assertCommandFail cli -i myimage
|
|
}
|
|
|
|
function test_setup_env(){
|
|
is_env_installed(){
|
|
return 1
|
|
}
|
|
assertCommandSuccess cli -a arm
|
|
assertEquals "$(echo -e "setup_env(arm)\nrun_env_as_user(,)")" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --arch arm
|
|
assertEquals "$(echo -e "setup_env(arm)\nrun_env_as_user(,)")" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli
|
|
assertEquals "$(echo -e "setup_env()\nrun_env_as_user(,)")" "$(cat $STDOUTF)"
|
|
|
|
is_env_installed(){
|
|
return 0
|
|
}
|
|
assertCommandFail cli -a arm
|
|
}
|
|
function test_run_env_as_fakeroot(){
|
|
assertCommandSuccess cli -f
|
|
assertEquals "run_env_as_fakeroot(,)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli --fakeroot
|
|
assertEquals "run_env_as_fakeroot(,)" "$(cat $STDOUTF)"
|
|
|
|
assertCommandSuccess cli -f -p "-b arg"
|
|
assertEquals "run_env_as_fakeroot(-b arg,)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli -f -p "-b arg" -- command -kv
|
|
assertEquals "run_env_as_fakeroot(-b arg,command -kv)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli -f command --as
|
|
assertEquals "run_env_as_fakeroot(,command --as)" "$(cat $STDOUTF)"
|
|
assertCommandFail cli -a "myarch" -f command --as
|
|
}
|
|
function test_run_env_as_user(){
|
|
assertCommandSuccess cli
|
|
assertEquals "run_env_as_user(,)" "$(cat $STDOUTF)"
|
|
|
|
assertCommandSuccess cli -p "-b arg"
|
|
assertEquals "run_env_as_user(-b arg,)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli -p "-b arg" -- command -ll
|
|
assertEquals "run_env_as_user(-b arg,command -ll)" "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli command -ls
|
|
assertEquals "run_env_as_user(,command -ls)" "$(cat $STDOUTF)"
|
|
|
|
assertCommandFail cli -a "myarch" -- command -ls
|
|
}
|
|
function test_run_env_as_root(){
|
|
assertCommandSuccess cli -r
|
|
assertEquals "run_env_as_root " "$(cat $STDOUTF)"
|
|
assertCommandSuccess cli -r command
|
|
assertEquals "run_env_as_root command" "$(cat $STDOUTF)"
|
|
}
|
|
|
|
function test_check_cli(){
|
|
assertCommandFail cli -b -h
|
|
assertCommandFail cli -b -c
|
|
assertCommandFail cli -d -s
|
|
assertCommandFail cli -n -v
|
|
assertCommandFail cli -d -r
|
|
assertCommandFail cli -h -f
|
|
assertCommandFail cli -v -i fsd
|
|
assertCommandFail cli -f -r
|
|
assertCommandFail cli -p args -v
|
|
assertCommandFail cli -a arch -v
|
|
assertCommandFail cli -d args
|
|
}
|
|
|
|
source $(dirname $0)/shunit2
|