lpr/test.sh

132 lines
2.0 KiB
Bash
Executable File

#!/bin/sh
assert()
{
local name=$1
local sub=$2
if [[ -z "$sub" ]]
then
return 1
fi
local OK="\\033[1;32m"
local NOK="\\033[1;31m"
local RAZ="\\033[0;39m"
if [[ "$PS1" == *$sub* ]]
then
echo -e "${OK}$name\tOK${RAZ}"
else
echo -e "${NOK}$name\tNO${RAZ}\t$sub"
fi
}
#####################
# REDEFINE COMMANDS #
#####################
command()
{
echo "fake command $@" 1>&2
echo "/bin/fake"
}
uname()
{
echo "fake uname $@" 1>&2
echo Linux
}
nproc()
{
echo "fake uname $@" 1>&2
echo 2
}
# battery
acpi()
{
echo "fake acpi $@" 1>&2
echo 'Battery 0: Discharging, 55%, 01:39:34 remaining'
}
git()
{
echo "fake git $@" 1>&2
case $1 in
"rev-parse" )
echo ".git";;
"branch" )
echo "* fake_test";;
"diff" )
echo "";;
"status" )
echo "# Untracked";;
"rev-list" )
echo "111";;
esac
}
# global variables
export http_proxy="fake"
################
# ADHOC CONFIG #
################
export LP_BATTERY_THRESHOLD=60
export LP_LOAD_THRESHOLD=1
export LP_MARK_PROXY="proxy"
export LP_MARK_BATTERY="BATT"
export LP_MARK_LOAD="LOAD"
export LP_MARK_UNTRACKED="untracked"
export LP_MARK_GIT="gitmark"
##########################
# Call the liquid prompt #
##########################
# As if we were in an interactive shell
export PS1="fake prompt \$"
# load functions
source ./liquidprompt
# Force liquid prompt function redefinition
_lp_cpu_load()
{
echo "fake _lp_cpu_load $@" 1>&2
echo "64"
}
# Force erroneous command
fake_error
# Force set prompt
_lp_set_prompt
#########
# TESTS #
#########
echo -e "$PS1"
assert BattMark BATT
assert BattLevel 55%
assert Load LOAD32%
assert User "[\\\u"
assert Perms :
assert Path $(pwd | sed -e "s|$HOME|~|")
assert Proxy proxy
assert Error 127
echo GIT
assert Branch fake_test
assert Commits 111
assert Untrack untracked
assert Mark gitmark