xamarin-android/build-tools
Jonathan Pryor 48e3fc2672 [tests] Run .apk unit tests and collect TestResults.xml (#305)
What do we want? Execution of unit tests!

When do we want it? Uh...4 months ago?

The `Xamarin.Android.NUnitLite` assembly allows writing NUnit-based
unit tests that execute on-device, and the `Mono.Android-Tests.csproj`
project contains a number of such unit tests.

The problem is that these unit tests aren't executed as part of the
Jenkins build process, so there's no way to know if a given commit
actually breaks anything.

In short, the existence of those unit tests is meaningless.

The task, then, is to fix the `make run-all-tests` target so that it
runs on-device unit tests...on an Android device.

Which raises all manner of problems. :-) (Hence 4+ months!)

For starters, our internal tooling is a horrible mish-mash of make(1),
ruby(1), bash(1), which creates an emulator, launches it, installs the
test .apk onto the emulator, and runs the tests. I don't want all of
that "cruft" in this repo, which means it needs to be rewritten in a
form more amenable to this repo: MSBuild tasks....and some make(1).

:-)

Add a new `build-tools/scripts/UnitTestApks.targets` file, which will
process an `@(UnitTestApk)` Item Group to permit deploying, running,
and undeploying test .apks from an attached Android device.

Add a slew of MSBuild tasks to support `@(UnitTestApk)`.

Update the default `$(AndroidSupportedTargetJitAbis)` value to be
`armeabi-v7a:x86`. The created Android emulator is x86.
2016-11-21 20:44:37 +00:00
..
android-toolchain [tests] Run .apk unit tests and collect TestResults.xml (#305) 2016-11-21 20:44:37 +00:00
api-merge Fix line endings 2016-07-06 17:09:45 +02:00
bundle [bundle] Allow the bundle to be used. (#213) 2016-09-08 17:14:49 -04:00
jnienv-gen Fix line endings 2016-07-06 17:09:45 +02:00
libzip [Xamarin.Android.Build.Tasks] Fix libzip build on Linux (#170) 2016-11-17 21:35:04 -05:00
libzip-windows [bundle] Allow the bundle to be used. (#213) 2016-09-08 17:14:49 -04:00
mono-runtimes [mono-runtimes] Check for correct filename before `strip`ing 2016-11-09 16:25:56 -05:00
scripts [tests] Run .apk unit tests and collect TestResults.xml (#305) 2016-11-21 20:44:37 +00:00
unix-distribution-setup Bump to mono/mono-4.8.0-branch/9e164326, Java.Interop/a1d3ecc8 (#223) 2016-09-15 18:13:56 +02:00
xa-prep-tasks [tests] Run .apk unit tests and collect TestResults.xml (#305) 2016-11-21 20:44:37 +00:00