History log of /ndk/tests/tests.py
Revision Date Author Comments
35346dfd26cdceb35a56deb961e0db015ab43485 04-Dec-2015 Dan Albert <danalbert@google.com> Gingerbread support for the test runner.

Wow. Gingerbread didn't support `mkdir -p` or `rm -f`. Avoid using
either of those.

Change-Id: I9f79613465e8608f89bad9a77c232620a3ca8b4e
877b0ba5f2e0f6c6c729bf388910691264406bff 04-Dec-2015 Dan Albert <danalbert@google.com> Fix doc, missed a --amend earlier.

Change-Id: I63cb52c17bef1ae83e75df896e1743239758622d
6abf81a055fa510794430457c77432ccf12475a4 03-Dec-2015 Dan Albert <danalbert@google.com> Pass the device's API level to device test_config.

We need to mark some tests as broken or unsupported based on what
device they are running on, as opposed to just what they were built
for.

Change-Id: I4818aa23d5af6f47f02d3bee5a22d299088e5562
4a1931270e6496f4b37551adaedc23c26f787bf5 24-Nov-2015 Dan Albert <danalbert@google.com> Replace cmp and diff with python equivalents.

Windows doesn't have these, and it's much easier to just use the
Python flavors rather than adding compatibility to shell out to the
right tools.

Change-Id: Icea144a61f0329314a6d5f7e2a92c9337bf2dba7
522c00403c6859aaf881b079456533e5b9bcce0a 25-Nov-2015 Dan Albert <danalbert@google.com> Give test binaries execute permission.

Change-Id: I8874ebb201445a0d9df7ec2a3e813ba452370446
ba50f01138ea9690a98cec4bb4abe6d88fdc7e85 25-Nov-2015 Dan Albert <danalbert@google.com> Use posixpath to build device path.

Change-Id: Iea106cff2a62bed35fb22a7d39eca1d64c2a8892
b2c41e443cd1868c65a411dd1158accac63825c9 24-Nov-2015 Dan Albert <danalbert@google.com> Actually use the prebuilt awk...

I tried to do this before, but apparently failed miserably.

Change-Id: I4132e39ed7d1a3fa58a478651046b678bb4859d3
ebc5fb43dae99b990eb96639fb1184b1deec3537 24-Nov-2015 Dan Albert <danalbert@google.com> Skip build.sh tests on Windows.

Bug: http://b/25293074
Change-Id: I3619462dc7bef5b315006cae84ae136be74631d9
9c7238cef1898ef61be6b40b9ca6654f104a082f 27-Oct-2015 Dan Albert <danalbert@google.com> Add a new build test type: test.py.

We want to be able to run the build tests on Windows without requiring
cygwin (or similar). Since we already have Python available, we can
just rewrite the build.sh tests in that. This new test type makes that
possible.

Bug: http://b/25293074
Change-Id: I4649a79c51a44708dfefaeb2aa05e303031e80ca
1e53031916ac893fcf953321cdaa32fb91d84012 07-Oct-2015 Dan Albert <danalbert@google.com> Always capture test output for the report.

Before, the build process was shown on the terminal and the final
report only said "build failed". This patch makes the execution more
succinct and displays all the messages at the end.

Change-Id: I57228fe2006652870b25a32789e11e337b046732
c8aa9d02ad6551b2fb9ae27314c54872da623914 05-Oct-2015 Dan Albert <danalbert@google.com> Don't count filtered tests as "skipped".

These are just clutter in the output. Skipped should be reserved for
things that were marked unsupported.

Change-Id: I1f533b351fc5c8d12cd28e0e5da00c3df822559d
b8f95f59a07eb2d0f65ac5840a559087d835c305 05-Oct-2015 Dan Albert <danalbert@google.com> Don't fixup UnexpectedSuccess or ExpectedFailure.

These have already been fixed up on a per-subtest basis in DeviceTest
(we don't have any knowledge of what subtests exist without building
them) so doing it again here will actually swap the two of them
(ExpectedFailure becomes an UnexpectedSuccess and vice versa).

Change-Id: I75e0684e3b8ffe0323aa2c6d3ca1fd225f08cdf8
4b485bf4fbd62ce2be8f45958cd223230a5be538 24-Sep-2015 Dan Albert <danalbert@google.com> Add test_config.py for better test disabling.

Each test directory can contain a "test_config.py" file that describes
the configurations a test is not expected to pass for. Previously this
information could be captured in one of two places: the Application.mk
file, or a BROKEN_BUILD/BROKEN_RUN file.

Application.mk was used to state that a test was only to be run for a
specific platform version, specific toolchain, or a set of ABIs.
Unfortunately Application.mk could only specify a single toolchain or
platform, not a set.

BROKEN_BUILD/BROKEN_RUN files were too general. An empty file meant
the test should always be skipped regardless of configuration. Any
change that would put a test in that situation should be reverted
immediately. These also didn't make it clear if the test was actually
broken (and thus should be fixed) or just not applicable.

A test_config.py file is more flexible. It is a Python module that
defines the functions `match_broken` and `match_unsupported`. These
functions respectively identify if a test is broken or unsupported for
the given configuration.

Change-Id: Ibffcef610a32c49efef17eba1154f6a9f4dcf565
a13bb8ae071e59e7881b6bf6f8386bfb0595d1b0 25-Sep-2015 Dan Albert <danalbert@google.com> Increase logging for device tests.

Many copies or many tests can make it look like the test is locked up.
Log each copy and execution so we can see what's going on.

Change-Id: I50e1f0d8f51dccd8fef8254a9ef09e3f8506e1de
eb959f69781dffd602cfc551e612a3a8cf7f55d5 25-Sep-2015 Dan Albert <danalbert@google.com> Filter tests copied to the device.

Some tests like stlport's contain a lot of executables. If we're only
running a single test, there's no sense spending 30 seconds copying
all of them.

Change-Id: Ie78e9103934cd62a8f48f1ac144d16ec9d892b05
14395e23186db4a65b4943a6307d223bc3ac4232 24-Sep-2015 Dan Albert <danalbert@google.com> Make toolchain a command line test argument.

This lets us avoid calling in to ndk-build to determine which
toolchain we're using (which we need to know to figure out if we
should skip the test or not).

Change-Id: I8da595863e8a760f50367091d70e1cd4f5254c5b
5399d01ab35b4b1192891723c9e9a86f5783d13e 27-Aug-2015 Dan Albert <danalbert@google.com> Use the prebuilt awk for the awk tests.

The old test runner didn't do this, but this was we should (in theory)
be able to run the tests on Windows too.

Change-Id: I6c11439e123af615ee158972bd98725ce682bf04
44873b38075d524c8f32754369085167852af711 06-Aug-2015 Dan Albert <danalbert@google.com> Move test details out of the driver script.

Only actual code change here is moving DEV_NULL from the global scope
down to the only function it's used in. Other than that it's just a
move.

Change-Id: I73d07aab4333bb36aa9a4f1029f36fa74029e9f7