mirror of
https://github.com/fsquillace/junest.git
synced 2026-01-23 10:35:36 +00:00
105 lines
2.6 KiB
Bash
Executable file
105 lines
2.6 KiB
Bash
Executable file
#!/bin/bash
|
|
# shellcheck disable=SC1091
|
|
|
|
source "$(dirname "$0")/../utils/utils.sh"
|
|
|
|
unset HOME
|
|
export HOME
|
|
HOME=$(TMPDIR=/tmp mktemp -d -t pearl-user-home.XXXXXXX)
|
|
|
|
source "$(dirname "$0")/../../lib/utils/utils.sh"
|
|
|
|
# Disable the exiterr
|
|
set +e
|
|
|
|
function oneTimeSetUp(){
|
|
setUpUnitTests
|
|
}
|
|
|
|
function test_check_not_null(){
|
|
assertCommandFailOnStatus 11 check_not_null "" ""
|
|
assertCommandSuccess check_not_null "bla" ""
|
|
}
|
|
|
|
function test_echoerr(){
|
|
assertCommandSuccess echoerr "Test"
|
|
assertEquals "Test" "$(cat "$STDERRF")"
|
|
}
|
|
|
|
function test_error(){
|
|
assertCommandSuccess error "Test"
|
|
local expected
|
|
expected=$(echo -e "\033[1;31mTest\033[0m")
|
|
assertEquals "$expected" "$(cat "$STDERRF")"
|
|
}
|
|
|
|
function test_warn(){
|
|
assertCommandSuccess warn "Test"
|
|
local expected
|
|
expected=$(echo -e "\033[1;33mTest\033[0m")
|
|
assertEquals "$expected" "$(cat "$STDERRF")"
|
|
}
|
|
|
|
function test_info(){
|
|
assertCommandSuccess info "Test"
|
|
local expected
|
|
expected=$(echo -e "\033[1;36mTest\033[0m")
|
|
assertEquals "$expected" "$(cat "$STDOUTF")"
|
|
}
|
|
|
|
function test_die(){
|
|
assertCommandFail die "Test"
|
|
local expected
|
|
expected=$(echo -e "\033[1;31mTest\033[0m")
|
|
assertEquals "$expected" "$(cat "$STDERRF")"
|
|
}
|
|
|
|
function test_die_on_status(){
|
|
assertCommandFailOnStatus 222 die_on_status 222 "Test"
|
|
local expected
|
|
expected=$(echo -e "\033[1;31mTest\033[0m")
|
|
assertEquals "$expected" "$(cat "$STDERRF")"
|
|
}
|
|
|
|
function test_ask_null_question(){
|
|
assertCommandFailOnStatus 11 ask "" "Y"
|
|
}
|
|
|
|
function test_ask(){
|
|
echo "Y" | ask "Test" &> /dev/null
|
|
assertEquals 0 $?
|
|
echo "y" | ask "Test" &> /dev/null
|
|
assertEquals 0 $?
|
|
echo "N" | ask "Test" &> /dev/null
|
|
assertEquals 1 $?
|
|
echo "n" | ask "Test" &> /dev/null
|
|
assertEquals 1 $?
|
|
echo -e "\n" | ask "Test" &> /dev/null
|
|
assertEquals 0 $?
|
|
echo -e "\n" | ask "Test" "N" &> /dev/null
|
|
assertEquals 1 $?
|
|
echo -e "asdf\n\n" | ask "Test" "N" &> /dev/null
|
|
assertEquals 1 $?
|
|
}
|
|
|
|
function test_ask_wrong_default_answer() {
|
|
echo "Y" | ask "Test" G &> /dev/null
|
|
assertEquals 33 $?
|
|
}
|
|
|
|
function test_insert_quotes_on_spaces(){
|
|
assertCommandSuccess insert_quotes_on_spaces this is "a test"
|
|
assertEquals "this is \"a test\"" "$(cat "$STDOUTF")"
|
|
|
|
assertCommandSuccess insert_quotes_on_spaces this is 'a test'
|
|
assertEquals "this is \"a test\"" "$(cat "$STDOUTF")"
|
|
}
|
|
|
|
function test_contains_element(){
|
|
array=("something to search for" "a string" "test2000")
|
|
assertCommandSuccess contains_element "a string" "${array[@]}"
|
|
|
|
assertCommandFailOnStatus 1 contains_element "blabla" "${array[@]}"
|
|
}
|
|
|
|
source "$(dirname "$0")"/../utils/shunit2
|