summaryrefslogtreecommitdiffstats
path: root/jack-tests/tests/com/android/jack/shrob
diff options
context:
space:
mode:
authordelphinemartin <delphinemartin@google.com>2014-04-28 14:45:21 +0200
committerdelphinemartin <delphinemartin@google.com>2014-05-13 14:01:23 +0200
commit73b9d196ad3ef8d3af90f12f0f192e7c363b98bc (patch)
tree96aae6a9aea2678768b02f78848d8547ddcab098 /jack-tests/tests/com/android/jack/shrob
parent053d5708fa9d12afd5e0d2cbea5bfc7527b336cd (diff)
downloadtoolchain_jack-73b9d196ad3ef8d3af90f12f0f192e7c363b98bc.zip
toolchain_jack-73b9d196ad3ef8d3af90f12f0f192e7c363b98bc.tar.gz
toolchain_jack-73b9d196ad3ef8d3af90f12f0f192e7c363b98bc.tar.bz2
Added new annotation test with various value types.
This was adapted from I828c92f0e382dc984b6462fab710f414138e7e02 Change-Id: I9b888a2e45b931433cac740647f72132e3175833
Diffstat (limited to 'jack-tests/tests/com/android/jack/shrob')
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/info.txt1
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/Annotated.java22
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/Annotated2.java22
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithClass.java27
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithEnum.java27
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithEnum2.java27
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/InterfaceWithEnum.java23
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByAnnotation.java24
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences.java38
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByClassInAnnotation.java38
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByEnum.java21
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByInterface.java24
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/proguard.flags0013
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/proguard.flags001.mapping14
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/refsFlattenPackage/expected-001.txt24
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/refsObfuscationWithMapping/expected-001.txt24
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/refsObfuscationWithoutMapping/expected-001.txt24
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/refsRepackageClasses/expected-001.txt24
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/refsSeed/expected-001.txt2
-rw-r--r--jack-tests/tests/com/android/jack/shrob/test040/refsShrinking/expected-001.txt24
20 files changed, 433 insertions, 0 deletions
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/info.txt b/jack-tests/tests/com/android/jack/shrob/test040/info.txt
new file mode 100644
index 0000000..341b8ed
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/info.txt
@@ -0,0 +1 @@
+This test contains annotated classes with various value types. \ No newline at end of file
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/Annotated.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/Annotated.java
new file mode 100644
index 0000000..6904913
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/Annotated.java
@@ -0,0 +1,22 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+@AnnotationWithEnum2(ReferencedByAnnotationWithOtherReferences.A)
+public class Annotated {
+
+}
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/Annotated2.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/Annotated2.java
new file mode 100644
index 0000000..3ad7365
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/Annotated2.java
@@ -0,0 +1,22 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+@AnnotationWithClass(ReferencedByClassInAnnotation.class)
+public class Annotated2 {
+
+}
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithClass.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithClass.java
new file mode 100644
index 0000000..77b16bf
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithClass.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+@Retention(RetentionPolicy.RUNTIME)
+public @interface AnnotationWithClass {
+
+ Class<?> value();
+
+}
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithEnum.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithEnum.java
new file mode 100644
index 0000000..5d3b7c8
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithEnum.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+@Retention(RetentionPolicy.RUNTIME)
+public @interface AnnotationWithEnum {
+
+ ReferencedByAnnotation value();
+
+} \ No newline at end of file
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithEnum2.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithEnum2.java
new file mode 100644
index 0000000..c5dec54
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/AnnotationWithEnum2.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+@Retention(RetentionPolicy.RUNTIME)
+public @interface AnnotationWithEnum2 {
+
+ ReferencedByAnnotationWithOtherReferences value();
+
+} \ No newline at end of file
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/InterfaceWithEnum.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/InterfaceWithEnum.java
new file mode 100644
index 0000000..7b7100f
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/InterfaceWithEnum.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+public interface InterfaceWithEnum {
+
+ ReferencedByInterface getEnum();
+
+}
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByAnnotation.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByAnnotation.java
new file mode 100644
index 0000000..108138e
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByAnnotation.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+public enum ReferencedByAnnotation {
+
+ A,
+ B;
+
+} \ No newline at end of file
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences.java
new file mode 100644
index 0000000..856f0fb
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences.java
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+public enum ReferencedByAnnotationWithOtherReferences {
+
+ A {
+ private ReferencedByEnum a = new ReferencedByEnum();
+ @Override
+ public int get() {
+ return a.hashCode();
+ }
+ },
+ B {
+ private ReferencedByEnum b = new ReferencedByEnum();
+ @Override
+ public int get() {
+ return b.hashCode();
+ }
+ };
+
+
+ public abstract int get();
+} \ No newline at end of file
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByClassInAnnotation.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByClassInAnnotation.java
new file mode 100644
index 0000000..6d89691
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByClassInAnnotation.java
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+public enum ReferencedByClassInAnnotation {
+
+ A {
+ private ReferencedByEnum a = new ReferencedByEnum();
+ @Override
+ public int get() {
+ return a.hashCode();
+ }
+ },
+ B {
+ private ReferencedByEnum b = new ReferencedByEnum();
+ @Override
+ public int get() {
+ return b.hashCode();
+ }
+ };
+
+
+ public abstract int get();
+}
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByEnum.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByEnum.java
new file mode 100644
index 0000000..525d1c0
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByEnum.java
@@ -0,0 +1,21 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+public class ReferencedByEnum {
+
+} \ No newline at end of file
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByInterface.java b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByInterface.java
new file mode 100644
index 0000000..41ac04f
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/jack/ReferencedByInterface.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, 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.android.jack.shrob.test040.jack;
+
+public enum ReferencedByInterface {
+
+ A,
+ B;
+
+} \ No newline at end of file
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/proguard.flags001 b/jack-tests/tests/com/android/jack/shrob/test040/proguard.flags001
new file mode 100644
index 0000000..9c8cd0e
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/proguard.flags001
@@ -0,0 +1,3 @@
+-keep class **.Annotated* {
+}
+-keepattributes \ No newline at end of file
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/proguard.flags001.mapping b/jack-tests/tests/com/android/jack/shrob/test040/proguard.flags001.mapping
new file mode 100644
index 0000000..150e01b
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/proguard.flags001.mapping
@@ -0,0 +1,14 @@
+com.android.jack.shrob.test040.jack.ReferencedByEnum -> com.android.jack.shrob.test040.jack.RenamedReferencedByEnum:
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences -> com.android.jack.shrob.test040.jack.RenamedReferencedByAnnotationWithOtherReferences:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences A -> renamedA
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences B -> renamedB
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] $VALUES -> renamed$VALUES
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] values() -> renamedValues
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$1 -> com.android.jack.shrob.test040.jack.RenamedReferencedByAnnotationWithOtherReferences$1:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum a -> renamedA
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$2 -> com.android.jack.shrob.test040.jack.RenamedReferencedByAnnotationWithOtherReferences$2:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum b -> renamedB
+com.android.jack.shrob.test040.jack.AnnotationWithClass -> com.android.jack.shrob.test040.jack.RenamedAnnotationWithClass:
+ java.lang.Class value() -> renamedValue
+com.android.jack.shrob.test040.jack.AnnotationWithEnum2 -> com.android.jack.shrob.test040.jack.RenamedAnnotationWithEnum2:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences value() -> renamedValue \ No newline at end of file
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/refsFlattenPackage/expected-001.txt b/jack-tests/tests/com/android/jack/shrob/test040/refsFlattenPackage/expected-001.txt
new file mode 100644
index 0000000..cf16126
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/refsFlattenPackage/expected-001.txt
@@ -0,0 +1,24 @@
+com.android.jack.shrob.test040.jack.Annotated2 -> com.android.jack.shrob.test040.jack.Annotated2:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByEnum -> com.android.jack.shrob.test040.jack.FrsrfrbprqOmRbiz:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences -> com.android.jack.shrob.test040.jack.FrsrfrbprqOmNbbchnhvcbKvhuChurfFrsrfrbprg:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences A -> N:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzBoopubujpoXjuiPuifsSfgfsfodft;
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences B -> O:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzBoopubujpoXjuiPuifsSfgfsfodft;
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] $VALUES -> $JNYIRG:[Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzBoopubujpoXjuiPuifsSfgfsfodft;
+ void <init>(java.lang.String,int) -> <init>
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] values() -> jnyirg__
+ void <clinit>() -> <clinit>
+ void <init>(java.lang.String,int,com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences) -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$1 -> com.android.jack.shrob.test040.jack.FrsrfrbprqOmNbbchnhvcbKvhuChurfFrsrfrbprg$1:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum a -> n:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzFovn;
+ void <init>(java.lang.String,int) -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$2 -> com.android.jack.shrob.test040.jack.FrsrfrbprqOmNbbchnhvcbKvhuChurfFrsrfrbprg$2:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum b -> o:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzFovn;
+ void <init>(java.lang.String,int) -> <init>
+com.android.jack.shrob.test040.jack.Annotated -> com.android.jack.shrob.test040.jack.Annotated:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.AnnotationWithClass -> com.android.jack.shrob.test040.jack.NbbchnhvcbKvhuPyngg:
+ java.lang.Class value() -> jnyir__
+com.android.jack.shrob.test040.jack.AnnotationWithEnum2 -> com.android.jack.shrob.test040.jack.NbbchnhvcbKvhuRbiz2:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences value() -> jnyir__
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/refsObfuscationWithMapping/expected-001.txt b/jack-tests/tests/com/android/jack/shrob/test040/refsObfuscationWithMapping/expected-001.txt
new file mode 100644
index 0000000..ae6624a
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/refsObfuscationWithMapping/expected-001.txt
@@ -0,0 +1,24 @@
+com.android.jack.shrob.test040.jack.Annotated2 -> com.android.jack.shrob.test040.jack.Annotated2:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByEnum -> com.android.jack.shrob.test040.jack.RenamedReferencedByEnum:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences -> com.android.jack.shrob.test040.jack.RenamedReferencedByAnnotationWithOtherReferences:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences A -> renamedA
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences B -> renamedB
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] $VALUES -> renamed$VALUES
+ void <init>(java.lang.String,int) -> <init>
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] values() -> renamedValues
+ void <clinit>() -> <clinit>
+ void <init>(java.lang.String,int,com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences) -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$1 -> com.android.jack.shrob.test040.jack.RenamedReferencedByAnnotationWithOtherReferences$1:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum a -> renamedA
+ void <init>(java.lang.String,int) -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$2 -> com.android.jack.shrob.test040.jack.RenamedReferencedByAnnotationWithOtherReferences$2:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum b -> renamedB
+ void <init>(java.lang.String,int) -> <init>
+com.android.jack.shrob.test040.jack.Annotated -> com.android.jack.shrob.test040.jack.Annotated:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.AnnotationWithClass -> com.android.jack.shrob.test040.jack.RenamedAnnotationWithClass:
+ java.lang.Class value() -> renamedValue
+com.android.jack.shrob.test040.jack.AnnotationWithEnum2 -> com.android.jack.shrob.test040.jack.RenamedAnnotationWithEnum2:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences value() -> renamedValue
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/refsObfuscationWithoutMapping/expected-001.txt b/jack-tests/tests/com/android/jack/shrob/test040/refsObfuscationWithoutMapping/expected-001.txt
new file mode 100644
index 0000000..cf16126
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/refsObfuscationWithoutMapping/expected-001.txt
@@ -0,0 +1,24 @@
+com.android.jack.shrob.test040.jack.Annotated2 -> com.android.jack.shrob.test040.jack.Annotated2:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByEnum -> com.android.jack.shrob.test040.jack.FrsrfrbprqOmRbiz:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences -> com.android.jack.shrob.test040.jack.FrsrfrbprqOmNbbchnhvcbKvhuChurfFrsrfrbprg:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences A -> N:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzBoopubujpoXjuiPuifsSfgfsfodft;
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences B -> O:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzBoopubujpoXjuiPuifsSfgfsfodft;
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] $VALUES -> $JNYIRG:[Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzBoopubujpoXjuiPuifsSfgfsfodft;
+ void <init>(java.lang.String,int) -> <init>
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] values() -> jnyirg__
+ void <clinit>() -> <clinit>
+ void <init>(java.lang.String,int,com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences) -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$1 -> com.android.jack.shrob.test040.jack.FrsrfrbprqOmNbbchnhvcbKvhuChurfFrsrfrbprg$1:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum a -> n:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzFovn;
+ void <init>(java.lang.String,int) -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$2 -> com.android.jack.shrob.test040.jack.FrsrfrbprqOmNbbchnhvcbKvhuChurfFrsrfrbprg$2:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum b -> o:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzFovn;
+ void <init>(java.lang.String,int) -> <init>
+com.android.jack.shrob.test040.jack.Annotated -> com.android.jack.shrob.test040.jack.Annotated:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.AnnotationWithClass -> com.android.jack.shrob.test040.jack.NbbchnhvcbKvhuPyngg:
+ java.lang.Class value() -> jnyir__
+com.android.jack.shrob.test040.jack.AnnotationWithEnum2 -> com.android.jack.shrob.test040.jack.NbbchnhvcbKvhuRbiz2:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences value() -> jnyir__
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/refsRepackageClasses/expected-001.txt b/jack-tests/tests/com/android/jack/shrob/test040/refsRepackageClasses/expected-001.txt
new file mode 100644
index 0000000..bd2b25c
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/refsRepackageClasses/expected-001.txt
@@ -0,0 +1,24 @@
+com.android.jack.shrob.test040.jack.Annotated2 -> com.android.jack.shrob.test040.jack.Annotated2:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByEnum -> FrsrfrbprqOmRbiz:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences -> FrsrfrbprqOmNbbchnhvcbKvhuChurfFrsrfrbprg:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences A -> N:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzBoopubujpoXjuiPuifsSfgfsfodft;
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences B -> O:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzBoopubujpoXjuiPuifsSfgfsfodft;
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] $VALUES -> $JNYIRG:[Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzBoopubujpoXjuiPuifsSfgfsfodft;
+ void <init>(java.lang.String,int) -> <init>
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences[] values() -> jnyirg__
+ void <clinit>() -> <clinit>
+ void <init>(java.lang.String,int,com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences) -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$1 -> FrsrfrbprqOmNbbchnhvcbKvhuChurfFrsrfrbprg$1:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum a -> n:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzFovn;
+ void <init>(java.lang.String,int) -> <init>
+com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences$2 -> FrsrfrbprqOmNbbchnhvcbKvhuChurfFrsrfrbprg$2:
+ com.android.jack.shrob.test040.jack.ReferencedByEnum b -> o:Ypcz/nbqfcvq/wnpx/gufco/hrgh040/wnpx/SfgfsfodfeCzFovn;
+ void <init>(java.lang.String,int) -> <init>
+com.android.jack.shrob.test040.jack.Annotated -> com.android.jack.shrob.test040.jack.Annotated:
+ void <init>() -> <init>
+com.android.jack.shrob.test040.jack.AnnotationWithClass -> NbbchnhvcbKvhuPyngg:
+ java.lang.Class value() -> jnyir__
+com.android.jack.shrob.test040.jack.AnnotationWithEnum2 -> NbbchnhvcbKvhuRbiz2:
+ com.android.jack.shrob.test040.jack.ReferencedByAnnotationWithOtherReferences value() -> jnyir__
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/refsSeed/expected-001.txt b/jack-tests/tests/com/android/jack/shrob/test040/refsSeed/expected-001.txt
new file mode 100644
index 0000000..debcb8b
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/refsSeed/expected-001.txt
@@ -0,0 +1,2 @@
+com.android.jack.shrob.test040.jack.Annotated2
+com.android.jack.shrob.test040.jack.Annotated
diff --git a/jack-tests/tests/com/android/jack/shrob/test040/refsShrinking/expected-001.txt b/jack-tests/tests/com/android/jack/shrob/test040/refsShrinking/expected-001.txt
new file mode 100644
index 0000000..5d5f76b
--- /dev/null
+++ b/jack-tests/tests/com/android/jack/shrob/test040/refsShrinking/expected-001.txt
@@ -0,0 +1,24 @@
+Lcom/android/jack/shrob/test040/jack/Annotated2;:
+<init>()V
+Lcom/android/jack/shrob/test040/jack/ReferencedByEnum;:
+<init>()V
+Lcom/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences;:
+Lcom/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences; A
+Lcom/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences; B
+[Lcom/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences; $VALUES
+<init>(Ljava/lang/String;I)V
+values()[Lcom/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences;
+<clinit>()V
+<init>(Ljava/lang/String;ILcom/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences;)V
+Lcom/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences$1;:
+Lcom/android/jack/shrob/test040/jack/ReferencedByEnum; a
+<init>(Ljava/lang/String;I)V
+Lcom/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences$2;:
+Lcom/android/jack/shrob/test040/jack/ReferencedByEnum; b
+<init>(Ljava/lang/String;I)V
+Lcom/android/jack/shrob/test040/jack/Annotated;:
+<init>()V
+Lcom/android/jack/shrob/test040/jack/AnnotationWithClass;:
+value()Ljava/lang/Class;
+Lcom/android/jack/shrob/test040/jack/AnnotationWithEnum2;:
+value()Lcom/android/jack/shrob/test040/jack/ReferencedByAnnotationWithOtherReferences;