Boost Testing :
Subject: Re: [Boost-testing] CrystaX runners
From: Raffi Enficiaud (raffi.enficiaud_at_[hidden])
Date: 2015-03-20 11:40:06
Le 20/03/15 16:07, Dmitry Moskalchuk a écrit :
> Hi Raffi,
>> The CrystaX suite of testers are failing the "error_handling_test"
>> which are not failing in (almost) any other platform. The error
>> indicates that a test file cannot be opened.
>> I am wondering if this is related to a long path issue, but the runner
>> is Linux, so this should not be the case.
>> Otherwise, what is the current path when a test is executed?
> This is simple. CrystaX runners are cross-platform runners, which
> differs from other runners significantly. All tests are compiled on
> Linux with help of CrystaX NDK and then uploaded to Android device and
> executed there. To make it possible, I've written special helper
> 'adbrunner' (included to CrystaX NDK) which is used as testing.launcher.
> It a) take executable with all it's command line arguments, b) tries to
> distinguish arguments which are actually file names from others, c)
> upload executable, needed shared libraries and detected files to Android
> device and d) run executable on device. Of course, there could be bugs
> in adbrunner where it don't detect some required files and don't upload
> them to device. I'm pretty sure that's it in this specific case. You can
> try fix it on your own, sending us pull request fixing adbrunner
> for this specific case, or file us ticket
> (https://tracker.crystax.net/projects/ndk/issues) and wait when we'll
> fix it.
That explains a lot of things.
I believe this scheme cannot detect at all any relative path that is
encoded in the binary itself, which is the problem in our case.
The binary implicitly supposes that it is running inside the same folder
as in the one of the source tree.
Wouldn't it be possible to mount a volume to those devices instead of
copying? Or to copy the full source tree (maybe without the build folder)?