aboutsummaryrefslogtreecommitdiffstats
path: root/files/ant
diff options
context:
space:
mode:
authorXavier Ducrohet <xav@android.com>2012-06-14 18:50:06 -0700
committerXavier Ducrohet <xav@android.com>2012-06-14 19:26:57 -0700
commitfcb82e3185d657e3b5440295478cdc58afd168c3 (patch)
treeb9c618741b2c36cd9529c25364d5814e7403d6ca /files/ant
parent8c9bfd85c162779a672e36f0a226759f40e4b31f (diff)
downloadsdk-fcb82e3185d657e3b5440295478cdc58afd168c3.zip
sdk-fcb82e3185d657e3b5440295478cdc58afd168c3.tar.gz
sdk-fcb82e3185d657e3b5440295478cdc58afd168c3.tar.bz2
Fix emma for split projects.
The location of the .em file was wrong. Changing its location means it gets put in the tested project so we need a way to know where the output of the project is. As we need to be better at supporting customized projects folder, we introduce a new task that will be able to look for the customized path of any projects. So far we only support the output folder and the source folder. Change-Id: Id8db82e254baae2088827c96b7719f94c92c927c
Diffstat (limited to 'files/ant')
-rw-r--r--files/ant/build.xml25
1 files changed, 15 insertions, 10 deletions
diff --git a/files/ant/build.xml b/files/ant/build.xml
index c3073fe..eb8b3d5 100644
--- a/files/ant/build.xml
+++ b/files/ant/build.xml
@@ -711,7 +711,8 @@
<instr verbosity="${verbosity}"
mode="overwrite"
instrpath="${out.absolute.dir}/classes"
- outdir="${out.absolute.dir}/classes">
+ outdir="${out.absolute.dir}/classes"
+ metadatafile="${out.absolute.dir}/coverage.em">
<filter excludes="${emma.default.filter}" />
<filter value="${emma.filter}" />
</instr>
@@ -1185,10 +1186,16 @@
<!-- Application package of the tested project extracted from its manifest file -->
<xpath input="${tested.project.absolute.dir}/AndroidManifest.xml"
expression="/manifest/@package" output="tested.project.app.package" />
+
+ <getproperty projectPath="${tested.project.absolute.dir}"
+ bin="tested.project.out.absolute.dir"
+ src="tested.project.source.absolute.dir" />
</then>
<else>
<!-- this is a test app, the tested package is the app's own package -->
<property name="tested.project.app.package" value="${project.app.package}" />
+ <property name="tested.project.out.absolute.dir" value="${out.absolute.dir}" />
+ <property name="tested.project.source.absolute.dir" value="${source.absolute.dir}" />
</else>
</if>
@@ -1210,25 +1217,23 @@
<arg line="${adb.device.arg}" />
<arg value="pull" />
<arg value="${emma.dump.file}" />
- <arg value="coverage.ec" />
+ <arg value="${out.absolute.dir}/coverage.ec" />
</exec>
<echo level="info">Extracting coverage report...</echo>
<emma>
- <report sourcepath="${tested.project.absolute.dir}/${source.dir}"
- verbosity="${verbosity}">
+ <report sourcepath="${tested.project.source.absolute.dir}"
+ verbosity="${verbosity}">
<!-- TODO: report.dir or something like should be introduced if necessary -->
- <infileset dir="${out.absolute.dir}">
- <include name="coverage.ec" />
- <include name="coverage.em" />
- </infileset>
+ <infileset file="${out.absolute.dir}/coverage.ec" />
+ <infileset file="${tested.project.out.absolute.dir}/coverage.em" />
<!-- TODO: reports in other, indicated by user formats -->
- <html outfile="coverage.html" />
+ <html outfile="${out.absolute.dir}/coverage.html" />
</report>
</emma>
<echo level="info">Cleaning up temporary files...</echo>
<delete file="${out.absolute.dir}/coverage.ec" />
<delete file="${out.absolute.dir}/coverage.em" />
- <echo level="info">Saving the report file in ${basedir}/coverage/coverage.html</echo>
+ <echo level="info">Saving the report file in ${out.absolute.dir}/coverage.html</echo>
</then>
<else>
<run-tests-helper />