|
Packit |
01d647 |
#!/bin/bash
|
|
Packit |
01d647 |
# Test driver for SshIo
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
source ./functions.source
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
##
|
|
Packit |
01d647 |
#function to test remote read access in basicio.cpp
|
|
Packit |
01d647 |
SFTPReadTest()
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
arg=$1
|
|
Packit |
01d647 |
scheme=${arg:0:4}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
src=$(basename "$arg")
|
|
Packit |
01d647 |
filename=${src%.*}
|
|
Packit |
01d647 |
test=${filename}.txt
|
|
Packit |
01d647 |
good=$datapath/${filename}.txt
|
|
Packit |
01d647 |
dot=.
|
|
Packit |
01d647 |
# run tests
|
|
Packit |
01d647 |
runTest exifprint $1 > $test
|
|
Packit |
01d647 |
#check results
|
|
Packit |
01d647 |
diffCheckAscii $test $good
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
printf $dot
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
##
|
|
Packit |
01d647 |
#function to test remote read access in basicio.cpp
|
|
Packit |
01d647 |
SshIOTest()
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
arg=$1
|
|
Packit |
01d647 |
scheme=${arg:0:4}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
src=$(basename "$arg")
|
|
Packit |
01d647 |
filename=${src%.*}
|
|
Packit |
01d647 |
test=${filename}.txt
|
|
Packit |
01d647 |
good=$datapath/remoteio.txt
|
|
Packit |
01d647 |
dot=.
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
# print out the metadata
|
|
Packit |
01d647 |
runTest remotetest $1 > $test
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
#check results
|
|
Packit |
01d647 |
diffCheckAscii $test $good
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
printf $dot
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
( cd "$testdir"
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
# check environmental variable
|
|
Packit |
01d647 |
if [ -z $EXIV2_AWSUBUNTU_HOST ]; then
|
|
Packit |
01d647 |
echo "***" please set the environmental variable EXIV2_AWSUBUNTU_HOST "***"
|
|
Packit |
01d647 |
exit 1
|
|
Packit |
01d647 |
fi
|
|
Packit |
01d647 |
if [ -z $EXIV2_AWSUBUNTU_USERNAME ]; then
|
|
Packit |
01d647 |
echo "***" please set the environmental variable EXIV2_AWSUBUNTU_USERNAME "***"
|
|
Packit |
01d647 |
exit 1
|
|
Packit |
01d647 |
fi
|
|
Packit |
01d647 |
if [ -z $EXIV2_AWSUBUNTU_PASSWORD ]; then
|
|
Packit |
01d647 |
echo "***" please set the environmental variable EXIV2_AWSUBUNTU_PASSWORD "***"
|
|
Packit |
01d647 |
exit 1
|
|
Packit |
01d647 |
fi
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
testfile="conntest.jpg"
|
|
Packit |
01d647 |
files+=(remoteImg{0..9}.jpg)
|
|
Packit |
01d647 |
iopngfiles+=(remoteio{1..5}.png)
|
|
Packit |
01d647 |
iojpgfiles+=(remoteio{6..10}.jpg)
|
|
Packit |
01d647 |
USE_SSH=$("$bin"/exiv2 -v -V | grep ^ssh= | sed s/ssh=//)
|
|
Packit |
01d647 |
if [ "$USE_SSH" == "0" ]; then
|
|
Packit |
01d647 |
#Skip remoteIo test cases
|
|
Packit |
01d647 |
echo 'Ssh is not used. Skip sshio test cases.'
|
|
Packit |
01d647 |
else
|
|
Packit |
01d647 |
# test connection
|
|
Packit |
01d647 |
printf 'sftp test connection '
|
|
Packit |
01d647 |
TEST_CON=$("$bin"/conntest sftp://"$EXIV2_AWSUBUNTU_USERNAME"_sftp:$EXIV2_AWSUBUNTU_PASSWORD@$EXIV2_AWSUBUNTU_HOST/var/www/$testfile)
|
|
Packit |
01d647 |
if [[ "$TEST_CON" == OK* ]]; then
|
|
Packit |
01d647 |
# SFTP protocol
|
|
Packit |
01d647 |
errors=0
|
|
Packit |
01d647 |
printf 'OK\nSFTP READ '
|
|
Packit |
01d647 |
for name in ${files[@]}; do
|
|
Packit |
01d647 |
SFTPReadTest "sftp://"$EXIV2_AWSUBUNTU_USERNAME"_sftp:$EXIV2_AWSUBUNTU_PASSWORD@$EXIV2_AWSUBUNTU_HOST/var/www/$name"
|
|
Packit |
01d647 |
done
|
|
Packit |
01d647 |
if [ $errors -eq 0 ]; then
|
|
Packit |
01d647 |
printf '\nAll test cases passed\n'
|
|
Packit |
01d647 |
else
|
|
Packit |
01d647 |
echo $errors ' test cases failed!'
|
|
Packit |
01d647 |
fi
|
|
Packit |
01d647 |
else
|
|
Packit |
01d647 |
echo $TEST_CON
|
|
Packit |
01d647 |
printf "FAIL\nnot run SFTP read\n"
|
|
Packit |
01d647 |
fi
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
# test connection
|
|
Packit |
01d647 |
printf 'ssh test connection '
|
|
Packit |
01d647 |
TEST_CON=$("$bin"/conntest ssh://$EXIV2_AWSUBUNTU_USERNAME:$EXIV2_AWSUBUNTU_PASSWORD@$EXIV2_AWSUBUNTU_HOST/sshtest/$testfile)
|
|
Packit |
01d647 |
if [[ "$TEST_CON" == OK* ]]; then
|
|
Packit |
01d647 |
# SSH protocol
|
|
Packit |
01d647 |
errors=0
|
|
Packit |
01d647 |
printf 'OK\nSSH IO '
|
|
Packit |
01d647 |
for name in ${iopngfiles[@]}; do
|
|
Packit |
01d647 |
SshIOTest "ssh://$EXIV2_AWSUBUNTU_USERNAME:$EXIV2_AWSUBUNTU_PASSWORD@$EXIV2_AWSUBUNTU_HOST/sshtest/$name"
|
|
Packit |
01d647 |
done
|
|
Packit |
01d647 |
for name in ${iojpgfiles[@]}; do
|
|
Packit |
01d647 |
SshIOTest "ssh://$EXIV2_AWSUBUNTU_USERNAME:$EXIV2_AWSUBUNTU_PASSWORD@$EXIV2_AWSUBUNTU_HOST/sshtest/$name"
|
|
Packit |
01d647 |
done
|
|
Packit |
01d647 |
if [ $errors -eq 0 ]; then
|
|
Packit |
01d647 |
printf '\nAll test cases passed\n'
|
|
Packit |
01d647 |
else
|
|
Packit |
01d647 |
echo $errors ' test cases failed!'
|
|
Packit |
01d647 |
fi
|
|
Packit |
01d647 |
else
|
|
Packit |
01d647 |
echo $TEST_CON
|
|
Packit |
01d647 |
printf "FAIL\nnot run SSH read\n"
|
|
Packit |
01d647 |
fi
|
|
Packit |
01d647 |
fi
|
|
Packit |
01d647 |
)
|
|
Packit |
01d647 |
# That's all Folks!
|
|
Packit |
01d647 |
##
|