Nice! Thanks for the good news...I can now take out the workaround in my
gradle file.

Mike

On Tue, Jun 23, 2015 at 8:04 AM, Pierre Degand <[email protected]>
wrote:

> I ended up loading resources from the classloader.
> Since AS 1.3, the resources in src/test/resources are automatically copied
> in the classpath to be properly loaded with getResourceAsStream().
>
> Thanks both of you for the answers.
>
> Le mar. 23 juin 2015 à 16:56, Michael Grafton <[email protected]> a
> écrit :
>
>> If your goal is to pull files off the file system in tests, the solution
>> I've used on my project is to simply put files on the classpath and call
>> Java's universal getResourceAsStream() method on Class.
>>
>> This is a unit testing technique that is as old as JUnit itself, but
>> sadly the Android build system does not support this out of the box (last I
>> checked).  Android's unit testing support is a recent development so not
>> everything works as expected.
>>
>> The problem is that non-java files are not addressable on the classpath
>> from android unit tests. We got around this by adding a gradle task to copy
>> them over. It's pretty straightforward and there are examples floating
>> around the internet.
>>
>> Mike
>>
>> On Tue, Jun 23, 2015 at 2:50 AM, Michal Bendowski <[email protected]>
>> wrote:
>>
>>> Android-style resources (currently) don't "just work" in JVM unit
>>> testing. You can always create a mock Resources instance, specify the
>>> behavior of openRawResource(...) and pass it to your code under test.
>>>
>>> Michal
>>>
>>>
>>> On Monday, June 22, 2015 at 3:16:45 PM UTC+1, Pierre Degand wrote:
>>>>
>>>> Hello,
>>>>
>>>> Is it possible to have unit test's specific resources or assets ?
>>>>
>>>> In my main/res/raw, I have a ws.json file that is used by my
>>>> production code.
>>>>
>>>> I want in some unit test to load a modified version of this json. I
>>>> would like to have in test/res/raw another file called test.json and
>>>> then reference it in a test java file with R.raw.test.
>>>>
>>>> I don't want to override all the files in main/res/raw because I also
>>>> need them in the java test file.
>>>>
>>>> I tried to modify the source sets of my test but it doesnt work
>>>>
>>>> sourceSets {
>>>>     test {
>>>>         assets.srcDirs = ['src/test/res', 'src/main/res']
>>>>     }
>>>> }
>>>>
>>>>
>>>> Is this even possible with the current build system ?
>>>>
>>>> Thank you.
>>>>
>>>  --
>>> 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.
>>>
>>  --
>> You received this message because you are subscribed to a topic in the
>> Google Groups "adt-dev" group.
>> To unsubscribe from this topic, visit
>> https://groups.google.com/d/topic/adt-dev/xmMwsqCdT-Q/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to
>> [email protected].
>> For more options, visit https://groups.google.com/d/optout.
>>
> --
> Pierre Degand
>
> --
> 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.
>

-- 
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