tree 79c37c483ff6fa2b223ac8c4606d5bb98254ceb8
parent efad207abcbee2235ff263beb3f11a34a7490c52
author Paul Duffin <paulduffin@google.com> 1497353339 +0100
committer Paul Duffin <paulduffin@google.com> 1497353339 +0100

Fix dependencies of packages that target earlier releases

A previous change added legacy-android-test as a static dependency to
all packages that build against the current, test_current or
system_current and failed to compile when the junit and android.test
classes were removed from the API. Unfortunately, those changes did not
take into account that some of those packages target earlier API
versions and so will always have the classes available at runtime.

This change replaces those static dependencies with dynamic dependencies
for any package that targets an earlier API version. The file changes
were made automatically by a tool that constructed and then analyzed a
full dependency graph of all the Android Java modules. The individual
changes were checked manually to ensure that the changes matched the
intent. The affected modules were built against an API with the junit
and android.test classes removed. Any issues found during this process
resulted in either the tool being updated to address the issue or a
separate change being made to fix an existing problem with the build. A
sample of the affected packages were run to ensure that they worked as
expected at runtime; no issues were found during testing.

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
    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES
    because messagingtests's manifest file (AndroidManifest.xml)
    targets API level 19 and dynamically includes the
    android.test.runner library at runtime so there is no point in
    statically including the classes.

    Added 'android.test.mock.sdk' and 'legacy-android-test' to
    LOCAL_JAVA_LIBRARIES because module messagingtests builds against
    'LOCAL_SDK_VERSION := current' and uses classes from packages
    android.test and android.test.mock (possibly indirectly) so will no
    longer compile once they are removed from the API.

    Dependency 'android.test.mock.sdk' is used instead of
    'android.test.mock' because module messagingtests builds against
    the API not internal jars and so should use libraries that build
    against the API not internal jars.

    A future change will replace the dependency on
    'legacy-android-test', which builds against the internal jars with
    a dependency on 'android.legacy.test' which will build against the
    API.

Bug: 30188076
Test: make checkbuild and ran a sample of tests
Change-Id: I3421d13eb6847647cae6982ecf704af769c83500
