Commit Graph

16 Commits

Author SHA1 Message Date
Dan Albert
660563f20a Fix test runner following adb line ending fix.
Looks like I was relying on this too.

Change-Id: If1feac8b2293082b601fa3976cc088ace22b5209
2015-06-15 17:06:53 -07:00
Dan Albert
447998cbb0 Fix LD_LIBRARY_PATH for host tests after update.
_run never gets called any more, so the LD_LIBRARY_PATH wasn't being
set any more. The tests were still passing locally for me because the
tests were happily using the libc++.so from my system rather than the
one we build.

Wasn't obvious from the buildbot because the display for the test
results is absolutely terrible and they got lost in the noise of the
known failures.

Change-Id: Ib2df196ec6748718930e70887b7d0099884d792c
2015-04-14 10:50:38 -07:00
Dan Albert
f8c938a5cf Fix output directory for host tests.
The host tests were being compiled into the target's out directory.
This wasn't causing any problems, but seeing it made me thing there
was something more sinister going on.

Change-Id: Ic2b9317512340e718f5c2648ecb23409dad7dcf9
2015-04-14 10:49:41 -07:00
Dan Albert
5d8e4e3581 Update Android's test configuration for new APIs.
The upstream test runner has changed enough that the way Android was
shimmed into it was no longer compatible. This adapts our test runner
to the new APIs for cross-compiling and remote execution.

There's probably a fair amount of dead code in the Android test
runners now (or at least some code that should be made dead). I'll
clean it up in a later patch, but want to get us up and running for
now.

The NDK test runner will need to be updated as well. There aren't any
continuous runs for that, so that will be fixed in a follow up as
well.

Change-Id: I1756f538aa6c7136ebd26d1e81c8299b87f0c6b2
2015-03-12 11:00:36 -07:00
Dan Albert
f62f39af02 Copy data files to the remote runner.
Summary:
The data files for any given test will be in the same directory as the
source with a file name that matches *.dat. To make these available to
tests running remotely (such as over adb or ssh), copy them into the
test's remote working directory.

Note that we will perform more copies than we actually need. The data
files in the directory may only be used by one of the tests, but will
be copied for all tests in the same directory.

This patch also moves the remote test binary into the working
directory (previously it was only invoked from the working directory
rather than existing in it).

Reviewers: EricWF, jroelofs

Reviewed By: jroelofs

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D8118

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@231864 91177308-0d34-0410-b5e6-96231b3b80d8

Change-Id: I53d095bd26e2f38bc938745c205439b1ae715de1
2015-03-12 11:00:36 -07:00
Dan Albert
702e978e57 Factor out RemoteExecutor from SSHExecutor.
Summary:
A lot of the pieces of SSHExecutor can be shared with my AdbExecutor
(https://android-review.googlesource.com/#/c/138807/).

Reviewers: EricWF, jroelofs

Reviewed By: jroelofs

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D8117

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@231815 91177308-0d34-0410-b5e6-96231b3b80d8

Change-Id: I38b5d3f16560a07fece15ab0a892c3060404384d
2015-03-12 11:00:36 -07:00
Dan Albert
90e862b946 Oops. This arg is passed, just ignored.
We should probably be using this argument to find the data files for
the tests, but that isn't implemented yet.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@231498 91177308-0d34-0410-b5e6-96231b3b80d8
Change-Id: Idbf369eada1de93a21180edc6abeeebf89e6cdff
2015-03-06 11:45:15 -08:00
Dan Albert
b0617a9302 Fix the PrefixExecutor.
The PrefixExecutor wasn't passing the exe_path down the chain, so the
command was overriding that, the work_dir was being passed as the
command, and so on.

I've cleaned up a few pylint issues while I was here.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@231496 91177308-0d34-0410-b5e6-96231b3b80d8
Change-Id: Ice5baa25246cf5830c91b329eaeb819ae0dd1aad
2015-03-06 11:45:15 -08:00
Dan Albert
5cb52824fc Merge to upstream r231255.
Change-Id: Ia8ee1801b42943464b99f28b6a83647458f3efb5
2015-03-04 10:47:52 -08:00
Dan Albert
aec496f48e Add NDK tests.
Bug: 19149083
Change-Id: I2222ee6230ed11e09ee00553e21855290b662da0
2015-02-17 17:03:28 -08:00
Dan Albert
ba6d1ebf99 [libc++] Add support for cross compiling.
Reviewers: EricWF, jroelofs

Reviewed By: jroelofs

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D6990

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@226237 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-15 16:58:42 -08:00
Dan Albert
69f7843275 Fix up Android test config to match upstream.
Change-Id: I053dde99259feadc0c0ec4e3e42a575b1ddab454
2015-01-15 14:33:42 -08:00
Dan Albert
4dc5b2198d Merge to upstream r226192.
Change-Id: Id459c8ce0d7dec371ff4d064ee2c71f6b7178e63
2015-01-15 14:32:55 -08:00
Dan Albert
2b3c63f704 Ignore failures from failed cleanup.
This `try` used to be in the function above, but an upstream change
made it our responsibility.

Change-Id: I34f1dca7244f67242b7a8f2979bf7560bc12b706
2015-01-14 18:08:38 -08:00
Dan Albert
8234f20ae7 Update the test configs to match the new layout.
Everything can be broken out into modules now, so there's not need to
keep the whole world in one file. This also brings us to the point
where we no longer require changes to any files in test/ compared to
upstream, only new files.

Change-Id: I3da27e12e6e2890355013c51567415436c4b517b
2015-01-09 11:35:20 -08:00
Dan Albert
036dcf6304 [libc++] Refactor test components into modules.
Summary:
I've moved the bulk of `lit.cfg` into `test/libcxx/testconfig.py` and
`test/libcxx/testformat.py`. All that remains in `lit.cfg` is the
logic to discover lit.site.cfg if lit.cfg was run directly, and the
logic for loading configuration variants.

The configuration variant flow has changed with this patch. Rather
than instantiating an object of type `<VARIANT>Configuration`, we now
instatiate an object of type `Configuration` that was loaded from the
module `<VARIANT>.testconfig.py`.

This has to be done on a per-project basis rather than in LIT itself
because LIT doesn't actually know where the real test directory is,
only where the site configuration is (which is usually in the output
directory). It's simple enough to do though, so it's fine to require
each project to do it themselves.

I also cleaned up all the pylint issues while I was here, which was
mostly just a matter of fixing long lines.

Reviewers: mclow.lists, jroelofs, EricWF

Reviewed By: EricWF

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D6881

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@225532 91177308-0d34-0410-b5e6-96231b3b80d8
(cherry picked from commit aa66357f48)

Change-Id: I07dafbe1085d9decd42f6aa28889dde1f5aaaa85
2015-01-09 10:28:22 -08:00