throw new WrongOptionException("Missing value for -rj");
}
- processJarFolder(args[index++], resourcesJars);
+ File f = new File(args[index]);
+ if (f.isDirectory()) {
+ processJarFolder(args[index++], resourcesJars);
+ } else if (f.isFile()) {
+ processJarFile(args[index++], resourcesJars);
+ }
} else if ("-nf".equals(argument)) {
// quick check on the next argument.
if (index == args.length) {
classname="com.android.ant.ApkBuilderTask"
classpathref="android.antlibs" />
+ <taskdef name="xpath"
+ classname="com.android.ant.XPathTask"
+ classpathref="android.antlibs" />
+
<!-- Properties -->
<property name="android.tools.dir" location="${sdk.dir}/tools" />
+ <!-- Name of the application package extracted from manifest file -->
+ <xpath input="AndroidManifest.xml" expression="/manifest/@package"
+ output="application.package" />
<!-- Input directories -->
<property name="source.dir" value="src" />
<property name="instrumentation.absolute.dir" location="${instrumentation.dir}" />
<property name="test.runner" value="android.test.InstrumentationTestRunner" />
- <property name="application.package.to.instrument" value="${application.package}.tests" />
+ <!-- Application package of the tested project extracted from its manifest file -->
+ <xpath input="${tested.project.absolute.dir}/AndroidManifest.xml"
+ expression="/manifest/@package" output="tested.application.package" />
<!-- TODO: make it more configurable in the next CL's - now it is default for auto-generated
project -->
- <property name="emma.dump.file" value="/data/data/${application.package}/files/coverage.ec" />
+ <property name="emma.dump.file"
+ value="/data/data/${tested.application.package}/files/coverage.ec" />
<macrodef name="run-tests-helper">
<attribute name="emma.enabled" default="false" />
<arg value="coverage" />
<arg value="@{emma.enabled}" />
<extra-instrument-args />
- <arg value="${application.package.to.instrument}/${test.runner}" />
+ <arg value="${application.package}/${test.runner}" />
</exec>
</sequential>
</macrodef>