68 lines
1.1 KiB
Bash
Executable File
68 lines
1.1 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# Script to automate running the provided example programs to test all
|
|
# language binding (cpp, python, java)
|
|
|
|
# Needs to be run from the directory containing the newly-built deb's
|
|
|
|
set -e
|
|
|
|
test -f protobuf-compiler_*.deb || \
|
|
{ echo "Cannot find protobuf-compiler deb file, exiting" 1>&2; exit 1; }
|
|
|
|
echo "*** Installing dependencies (hardcoded list)"
|
|
|
|
apt-get install -y openjdk-6-jdk python python-support pkg-config zlib1g-dev
|
|
|
|
echo "*** Installing packages"
|
|
|
|
dpkg -i *.deb
|
|
|
|
cd /usr/share/doc/protobuf-compiler/examples
|
|
|
|
export CLASSPATH=/usr/share/java/protobuf.jar
|
|
|
|
echo "*** Building example programs"
|
|
|
|
make
|
|
|
|
TEST_FILE=`mktemp`
|
|
echo "Test file is $TEST_FILE"
|
|
|
|
echo "*** Adding via cpp"
|
|
./add_person_cpp $TEST_FILE << EOF
|
|
1
|
|
Person One
|
|
|
|
|
|
EOF
|
|
|
|
echo "*** Adding via python"
|
|
|
|
./add_person_python $TEST_FILE << EOF
|
|
2
|
|
Person Two
|
|
two@example.net
|
|
|
|
EOF
|
|
|
|
echo "*** Adding via java"
|
|
|
|
./add_person_java $TEST_FILE << EOF
|
|
2
|
|
Person Two
|
|
|
|
555-1234
|
|
work
|
|
|
|
EOF
|
|
|
|
|
|
|
|
for kind in cpp python java; do
|
|
echo "*** Listing via $kind"
|
|
./list_people_$kind $TEST_FILE
|
|
done
|
|
|
|
rm $TEST_FILE
|