devstack/tools/xen/mocks
Mate Lakat 57e3da9b76 xenapi: Extract plugin installation functions
This change extracts the plugin installation functions, and covers the
extracted functions with tests. Use:

    ./test_funtions.sh run_tests

to run the tests.

Change-Id: I1d78d9e8cc4d52ee2df83d07e4c74dda4805f21a
2013-03-25 15:12:58 +00:00

60 lines
1.1 KiB
Bash

#!/bin/bash
test ! -e "$LIST_OF_ACTIONS" && {
echo "Mocking is not set up properly."
echo "LIST_OF_ACTIONS should point to an existing file."
exit 1
}
test ! -e "$LIST_OF_DIRECTORIES" && {
echo "Mocking is not set up properly."
echo "LIST_OF_DIRECTORIES should point to an existing file."
exit 1
}
function mktemp {
if test "${1:-}" = "-d";
then
echo "tempdir"
else
echo "tempfile"
fi
}
function wget {
echo "wget $@" >> $LIST_OF_ACTIONS
}
function mkdir {
if test "${1:-}" = "-p";
then
echo "$2" >> $LIST_OF_DIRECTORIES
fi
}
function unzip {
echo "Random rubbish from unzip"
echo "unzip $@" >> $LIST_OF_ACTIONS
}
function rm {
echo "rm $@" >> $LIST_OF_ACTIONS
}
function [ {
if test "${1:-}" = "-d";
then
echo "[ $@" >> $LIST_OF_ACTIONS
for directory in $(cat $LIST_OF_DIRECTORIES)
do
if test "$directory" = "$2"
then
return 0
fi
done
return 1
fi
echo "Mock test does not implement the requested function"
exit 1
}