2
0
mirror of https://github.com/alexanderepstein/Bash-Snippets synced 2018-11-08 02:59:35 +01:00
Bash-Snippets/tests/transfer.bats

61 lines
2.0 KiB
Bash
Executable File

#!/bin/env bats
@test "Testing transfer tool" {
echo transfer
}
@test "Check for latest version of bash-snippets on update" {
if [[ "$(uname)" == "Linux" ]];then
run transfer update
[ "$status" -eq 0 ]
[ "$output" = "Bash-Snippets is already the latest version" ]
fi
}
@test "The -h option should print usage" {
run transfer -h
[ "$status" -eq 0 ]
[ "${lines[0]}" = "Transfer" ]
}
@test "Testing file upload" {
touch $HOME/testFile.txt
echo -n "This is some example content." > $HOME/testFile.txt
run transfer $HOME/testFile.txt
transferResponse=$(transfer $HOME/testFile.txt)
rm -f $HOME/testFile.txt
transferCommand=$( echo $transferResponse | cut -d $'\n' -f 3 | sed s/"Transfer Download Command:"//g | sed s:"desiredOutputDirectory":"$HOME":g | sed s:"^ "::g)
transferStatus=$( echo $transferResponse | grep -Eo "Success!")
[ "$status" -eq 0 ]
[ "$transferStatus" = "Success!" ] ## this works for darwin but the test wont
}
@test "Testing file upload & download" {
touch $HOME/testFile.txt
echo -n "This is some example content." > $HOME/testFile.txt
transferResponse=$(transfer $HOME/testFile.txt)
#transferCommand=$( echo $transferResponse | cut -d $'\n' -f 3 | sed s/"Transfer Download Command:"//g | sed s:"desiredOutputDirectory":"$HOME":g | sed s:"^ "::g)
id=$(echo $transferResponse | cut -d "/" -f 4)
transferStatus=$( echo $transferResponse | grep -Eo "Success!")
[ "$transferStatus" = "Success!" ]
rm -f $HOME/testFile.txt
if [ -f $HOME/testFile.txt ];then exit 1;fi
run transfer -d $HOME $id testFile.txt
if [ ! -f $HOME/testFile.txt ];then exit 1;fi
contents=$(cat $HOME/testFile.txt)
if [ $contents != "This is some example content." ];then exit 1; fi
rm -f $HOME/testFile.txt
transferResponse=$(transfer -d $HOME $id testFile.txt)
transferStatus=$( echo $transferResponse | grep -Eo "Success!")
[ "$transferStatus" = "Success!" ]
rm -f $HOME/testFile.txt
}
@test "Get the tools version with -v" {
run transfer -v
[ "$status" -eq 0 ]
result=$( echo $(transfer -v) | grep -Eo "Version")
[ "$result" = "Version" ]
}