#!/bin/sh
###########################################################
#Licensed to the Apache Software Foundation (ASF) under one
#or more contributor license agreements. See the NOTICE file
#distributed with this work for additional information
#regarding copyright ownership. The ASF licenses this file
#to you under the Apache License, Version 2.0 (the
#"License"); you may not use this file except in compliance
#with the License. You may obtain a copy of the License at
#
#http://www.apache.org/licenses/LICENSE-2.0
#
#Unless required by applicable law or agreed to in writing,
#software distributed under the License is distributed on an
#"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
#KIND, either express or implied. See the License for the
#specific language governing permissions and limitations
#under the License.
###########################################################
cleanup()
{
echo "******************************************************"
echo "Cleanup"
echo "******************************************************"
for PID in `ps aux | grep 'qpidd'|grep 'broker.log'|grep -v 'grep'|awk '{ print $2 }'`
do
kill -9 $PID
done
}
run_broker()
{
echo "******************************************************"
echo "Starting C++ broker"
echo "******************************************************"
echo ""
$CC_HOME/cpp/src/qpidd -t -d --auth no --no-data-dir --log-to-file $CC_HOME/broker.log
}
stop_broker()
{
echo "******************************************************"
echo "Stopping the C++ broker"
echo "******************************************************"
echo ""
$CC_HOME/cpp/src/qpidd -q
}
verify()
{
#echo "arg " $2 " path: " $1
for dir in $(find $1 -mindepth 1 -maxdepth 1 -type d -not -name '*.svn' -not -name $3 )
do
echo $dir
for script in $(find $dir -mindepth 1 -maxdepth 1 -type f -name $2 -not -name '*.*')
do
# echo "script:" $script
cleanup
run_broker
$CC_HOME/cc/scripts/verify $script >> $CC_HOME/script.log 2>&1
killall 'verify'
stop_broker
done
done
}
run_python_python()
{
echo "--------------------"
verify $CC_HOME/python/examples "verify" "xml-exchange"
echo "--------------------"
echo ""
}
run_cpp_cpp()
{
echo "--------------------"
verify $CC_HOME/cpp/examples "verify" "*.svn"
echo "-------------------"
echo ""
}
run_python_cpp_comb()
{
echo "--------------------"
verify $CC_HOME/cpp/examples "verify_cpp_python" "*.svn"
verify $CC_HOME/cpp/examples "verify_python_cpp" "*.svn"
echo "-------------------"
echo ""
}
run_java_java()
{
echo "--------------------"
verify $CC_HOME/java/client/example/src/main/java/org/apache/qpid/example/jmsexample "verify" "*.svn"
echo "-------------------"
echo ""
}
run_java_cpp_comb()
{
echo "--------------------"
verify $CC_HOME/java/client/example/src/main/java/org/apache/qpid/example/jmsexample "verify_java_cpp" "*.svn"
verify $CC_HOME/java/client/example/src/main/java/org/apache/qpid/example/jmsexample "verify_cpp_java" "*.svn"
echo "-------------------"
echo ""
}
run_java_python_comb()
{
echo "--------------------"
verify $CC_HOME/java/client/example/src/main/java/org/apache/qpid/example/jmsexample "verify_java_python" "*.svn"
verify $CC_HOME/java/client/example/src/main/java/org/apache/qpid/example/jmsexample "verify_python_java" "*.svn"
echo "-------------------"
echo ""
}
run_dotnet_dotnet()
{
echo "--------------------"
verify $CC_HOME/dotnet/client-010/examples/ "verify" "*.svn"
echo "-------------------"
echo ""
}
run_cpp_dotnet()
{
echo "--------------------"
verify $CC_HOME/dotnet/client-010/examples/ "verify_cpp_dotnet" "*.svn"
verify $CC_HOME/dotnet/client-010/examples/ "verify_dotnet_cpp" "*.svn"
echo "-------------------"
echo ""
}
run_java_dotnet()
{
echo "--------------------"
verify $CC_HOME/dotnet/client-010/examples/ "verify_java_dotnet" "*.svn"
verify $CC_HOME/dotnet/client-010/examples/ "verify_dotnet_java" "*.svn"
echo "-------------------"
echo ""
}
run_python_dotnet()
{
echo "--------------------"
verify $CC_HOME/dotnet/client-010/examples/ "verify_python_dotnet" "*.svn"
verify $CC_HOME/dotnet/client-010/examples/ "verify_dotnet_python" "*.svn"
echo "-------------------"
echo ""
}
run_python_python
run_python_cpp_comb
run_cpp_cpp
run_java_java
run_java_cpp_comb
run_java_python_comb
run_dotnet_dotnet
run_cpp_dotnet
run_java_dotnet
run_python_dotnet