linphone-android/liblinphone_tester/custom_rules.xml
2014-09-16 11:56:00 +02:00

53 lines
1.7 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<project name="custom_rules">
<target name="run">
<exec executable="adb">
<arg value="shell" />
<arg value="am" />
<arg value="start" />
<arg value="-a" />
<arg value="android.intent.action.MAIN" />
<arg value="-n" />
<arg value="org.linphone.tester/org.linphone.tester.MainActivity" />
</exec>
</target>
<target name="test">
<property name="output.file" value="./tests.output" />
<tstamp>
<format property="archive.name"
pattern="'liblinphonetester_'yyyyMMdd_HHmmss" />
</tstamp>
<echo>Adb log files are put in ${archive.name}.zip</echo>
<exec executable="./adb-log-start.sh" >
<arg value=" ${archive.name}" />
</exec>
<exec executable="bash">
<arg value="-c"/>
<!-- use 'tee' command to write in file AND on stdout.
First is used below to check if tests failed or not while second
is used to get output in real time -->
<arg value="adb shell am instrument -r -w org.linphone.tester/org.linphone.tester.TestRunner | tee ${output.file}"/>
</exec>
<!-- hack to stop adb logcat-->
<exec executable="bash" >
<arg value="-c" />
<arg value="kill `cat adb.pid`" />
</exec>
<zip destfile="${archive.name}.zip">
<fileset dir="." includes="${archive.name}"/>
</zip>
<delete file="${archive.name}"/>
<fail message="Tests failed">
<condition>
<resourcecontains resource="${output.file}" substring="FAILURES" />
</condition>
</fail>
<fail message="Tests crashed">
<condition>
<resourcecontains resource="${output.file}" substring="Process crashed" />
</condition>
</fail>
<delete file="${output.file}"/>
</target>
</project>