A simple solution to your problem would be to move the test code to a 
separate library that you can use from both your lib and app by using 
androidTestCompile.

/app
/lib
/testlib

Dependencies:
app compile lib
app androidTestCompile testlib
lib androidTestCompile testlib

testlib would be a normal project. You do have to make the testlib not 
depend on code in lib though..


On Friday, May 23, 2014 5:20:50 PM UTC+2, Dan Lew wrote:
>
> Hello,
> I've got a bit of a quandary. Suppose in a project I've got two folders, 
> one for an app and one for a java lib:
>
> /app/
> /lib/
>
> The reason for /lib/ to be separate is so it can be pure java (and run 
> fast unit tests). Now, we want /app/'s androidTest to use dependencies from 
> /lib/src/test/.
>
> I've managed to at least get the app to compile by specifying the 
> project's tests as a dependency:
>
> dependencies {
>     androidTestCompile project(':lib').sourceSets.test.output
> }
>
> But in the packaging step it blows up giving me this error:
>
> "> Unable to compute hash of <root>/lib/build/resources/test"
>
> --debug reveals the problem is in AndroidBuilder:
>
> Caused by: com.android.builder.packaging.PackagerException: Unable to 
> compute hash of <root>/lib/build/resources/test
> at com.android.builder.AndroidBuilder.packageApk(AndroidBuilder.java:1590)
> at com.android.builder.AndroidBuilder$packageApk.call(Unknown Source)
> at 
> com.android.build.gradle.tasks.PackageApplication.doFullTaskAction(PackageApplication.groovy:91)
> ... 76 more
>
> For some reason it's trying to compute the hash of a directory instead of 
> individual files, but at this point I'm not sure why.
>
> If there's a better way to set this up - or a way to get it to stop trying 
> to erroneously hash non-jars - I'd appreciate the help.
>
> -Daniel
>

-- 
You received this message because you are subscribed to the Google Groups 
"adt-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to