tree faeb90e0e910d62549d1e5158f8897b57ba080cf
parent f6eb98dbb81fc511b166e8349dbb707abdd8168f
author Paul Duffin <paulduffin@google.com> 1512691362 +0000
committer Paul Duffin <paulduffin@google.com> 1512691713 +0000

Stop statically including legacy-android-test

Statically including legacy-android-test leads to duplicate classes
which causes build time problems (with Proguard) and runtime problems on
older SDK versions. This change:
* Stops statically including legacy-android-test.
* Adds compile time dependencies on andoid.test.base, android.test.mock
  and android.test.runner where necessary.
* Adds <uses-library android:name="android.test.runner"/> to any
  affected package to ensure that the classes that were included by
  legacy-android-test are still available at runtime. That also adds a
  dependency on android.test.base and android.test.mock.

The following change descriptions were generated automatically and so
may be a little repetitive. They are provided to give the reviewer
enough information to check the comments match what has actually been
changed and check the reasoning behind the changes.

* tests/Android.mk
    Added 'android.test.base' to LOCAL_JAVA_LIBRARIES because
    LegacyCameraTests's source depends on its classes and because of
    these changes they are no longer present on the compilation path.

    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
    because statically including the classes in LegacyCameraTests
    results in duplicate classes which leads to build time and compile
    time issues.

Bug: 30188076
Test: make checkbuild
Change-Id: I9590a49f43925c0c6926227053e74839b29add39
