diff options
author | kmb <kmb@google.com> | 2018-03-12 21:37:51 -0700 |
---|---|---|
committer | Ivan Gavrilovic <gavra@google.com> | 2018-05-04 10:40:06 +0100 |
commit | 44b53edaa9c5611c75e08da2fdc5d91c7b0ac6ae (patch) | |
tree | 6040dd4b8305db93501afa19e1c23c6f0dba7fe2 /test | |
parent | 46d8182c5c6cb6616586a7ba8466f88ef2fee16a (diff) | |
download | desugar-44b53edaa9c5611c75e08da2fdc5d91c7b0ac6ae.tar.gz |
Make KeepScanner tool search classpath for nearest definition of each member reference, instead of potentially referring to a subtype.
Refactor desugar's class loading machinery and related code into a separate package for easier reuse in this tool.
RELNOTES: None.
PiperOrigin-RevId: 188825305
GitOrigin-RevId: 2cbeb24a9c41c6b14ecbb26e2e198fbaf79aea64
Change-Id: Ie2969cb1e1c86aa68c5a6dc0be6b42b09dfaee70
Diffstat (limited to 'test')
9 files changed, 30 insertions, 3 deletions
diff --git a/test/java/com/google/devtools/build/android/desugar/CoreLibrarySupportTest.java b/test/java/com/google/devtools/build/android/desugar/CoreLibrarySupportTest.java index ec4e16d..42f1f78 100644 --- a/test/java/com/google/devtools/build/android/desugar/CoreLibrarySupportTest.java +++ b/test/java/com/google/devtools/build/android/desugar/CoreLibrarySupportTest.java @@ -16,6 +16,7 @@ package com.google.devtools.build.android.desugar; import static com.google.common.truth.Truth.assertThat; import com.google.common.collect.ImmutableList; +import com.google.devtools.build.android.desugar.io.CoreLibraryRewriter; import java.util.Collection; import java.util.Comparator; import java.util.Map; diff --git a/test/java/com/google/devtools/build/android/desugar/CorePackageRenamerTest.java b/test/java/com/google/devtools/build/android/desugar/CorePackageRenamerTest.java index 2bdd58b..5220ed6 100644 --- a/test/java/com/google/devtools/build/android/desugar/CorePackageRenamerTest.java +++ b/test/java/com/google/devtools/build/android/desugar/CorePackageRenamerTest.java @@ -16,6 +16,7 @@ package com.google.devtools.build.android.desugar; import static com.google.common.truth.Truth.assertThat; import com.google.common.collect.ImmutableList; +import com.google.devtools.build.android.desugar.io.CoreLibraryRewriter; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; diff --git a/test/java/com/google/devtools/build/android/desugar/DefaultMethodClassFixerTest.java b/test/java/com/google/devtools/build/android/desugar/DefaultMethodClassFixerTest.java index faa6dda..406a36f 100644 --- a/test/java/com/google/devtools/build/android/desugar/DefaultMethodClassFixerTest.java +++ b/test/java/com/google/devtools/build/android/desugar/DefaultMethodClassFixerTest.java @@ -19,7 +19,10 @@ import static com.google.devtools.build.android.desugar.DefaultMethodClassFixer. import com.google.common.collect.ImmutableList; import com.google.common.io.Closer; -import com.google.devtools.build.android.desugar.Desugar.ThrowingClassLoader; +import com.google.devtools.build.android.desugar.io.CoreLibraryRewriter; +import com.google.devtools.build.android.desugar.io.HeaderClassLoader; +import com.google.devtools.build.android.desugar.io.IndexedInputs; +import com.google.devtools.build.android.desugar.io.ThrowingClassLoader; import java.io.File; import java.io.IOException; import java.io.Serializable; diff --git a/test/java/com/google/devtools/build/android/desugar/Java7CompatibilityTest.java b/test/java/com/google/devtools/build/android/desugar/Java7CompatibilityTest.java index 2eab943..99e51c1 100644 --- a/test/java/com/google/devtools/build/android/desugar/Java7CompatibilityTest.java +++ b/test/java/com/google/devtools/build/android/desugar/Java7CompatibilityTest.java @@ -16,6 +16,7 @@ package com.google.devtools.build.android.desugar; import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.fail; +import com.google.devtools.build.android.desugar.io.BitFlags; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; diff --git a/test/java/com/google/devtools/build/android/desugar/TryWithResourcesRewriterTest.java b/test/java/com/google/devtools/build/android/desugar/TryWithResourcesRewriterTest.java index 37afae7..dc0da22 100644 --- a/test/java/com/google/devtools/build/android/desugar/TryWithResourcesRewriterTest.java +++ b/test/java/com/google/devtools/build/android/desugar/TryWithResourcesRewriterTest.java @@ -25,6 +25,7 @@ import static org.objectweb.asm.Opcodes.ASM5; import static org.objectweb.asm.Opcodes.INVOKESTATIC; import static org.objectweb.asm.Opcodes.INVOKEVIRTUAL; +import com.google.devtools.build.android.desugar.io.BitFlags; import com.google.devtools.build.android.desugar.runtime.ThrowableExtension; import com.google.devtools.build.android.desugar.testdata.ClassUsingTryWithResources; import java.io.IOException; diff --git a/test/java/com/google/devtools/build/android/desugar/FieldInfoTest.java b/test/java/com/google/devtools/build/android/desugar/io/FieldInfoTest.java index afb2bea..0579822 100644 --- a/test/java/com/google/devtools/build/android/desugar/FieldInfoTest.java +++ b/test/java/com/google/devtools/build/android/desugar/io/FieldInfoTest.java @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.android.desugar; +package com.google.devtools.build.android.desugar.io; import static com.google.common.truth.Truth.assertThat; diff --git a/test/java/com/google/devtools/build/android/desugar/IndexedInputsTest.java b/test/java/com/google/devtools/build/android/desugar/io/IndexedInputsTest.java index bac3fc9..81a4b31 100644 --- a/test/java/com/google/devtools/build/android/desugar/IndexedInputsTest.java +++ b/test/java/com/google/devtools/build/android/desugar/io/IndexedInputsTest.java @@ -11,7 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -package com.google.devtools.build.android.desugar; +package com.google.devtools.build.android.desugar.io; import static com.google.common.truth.Truth.assertThat; diff --git a/test/java/com/google/devtools/build/android/desugar/scan/testdata/CollectionReferences.java b/test/java/com/google/devtools/build/android/desugar/scan/testdata/CollectionReferences.java index 482c32a..830364c 100644 --- a/test/java/com/google/devtools/build/android/desugar/scan/testdata/CollectionReferences.java +++ b/test/java/com/google/devtools/build/android/desugar/scan/testdata/CollectionReferences.java @@ -54,6 +54,10 @@ public class CollectionReferences { return result; } + public void expire(long before) { + dates.removeIf(d -> d.getTime() < before); + } + static { System.out.println("Hello!"); } diff --git a/test/java/com/google/devtools/build/android/desugar/scan/testdata_golden.txt b/test/java/com/google/devtools/build/android/desugar/scan/testdata_golden.txt index 35744ce..6082576 100644 --- a/test/java/com/google/devtools/build/android/desugar/scan/testdata_golden.txt +++ b/test/java/com/google/devtools/build/android/desugar/scan/testdata_golden.txt @@ -18,6 +18,19 @@ -keep class java.lang.System { *** out; } +-keep class java.lang.invoke.CallSite { +} +-keep class java.lang.invoke.LambdaMetafactory { + *** metafactory(java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.invoke.MethodType, java.lang.invoke.MethodType, java.lang.invoke.MethodHandle, java.lang.invoke.MethodType); +} +-keep class java.lang.invoke.MethodHandle { +} +-keep class java.lang.invoke.MethodHandles { +} +-keep class java.lang.invoke.MethodHandles$Lookup { +} +-keep class java.lang.invoke.MethodType { +} -keep class java.util.AbstractList { } -keep class java.util.ArrayList { @@ -28,6 +41,7 @@ *** iterator(); } -keep class java.util.Collection { + *** removeIf(java.util.function.Predicate); } -keep class java.util.Date { <init>(long); @@ -44,3 +58,5 @@ *** get(int); *** iterator(); } +-keep class java.util.function.Predicate { +} |