diff options
Diffstat (limited to 'src/test/java/cuchaz/enigma/TestTranslator.java')
| -rw-r--r-- | src/test/java/cuchaz/enigma/TestTranslator.java | 86 |
1 files changed, 43 insertions, 43 deletions
diff --git a/src/test/java/cuchaz/enigma/TestTranslator.java b/src/test/java/cuchaz/enigma/TestTranslator.java index dddfb70..c8af307 100644 --- a/src/test/java/cuchaz/enigma/TestTranslator.java +++ b/src/test/java/cuchaz/enigma/TestTranslator.java | |||
| @@ -42,108 +42,108 @@ public class TestTranslator { | |||
| 42 | 42 | ||
| 43 | @Test | 43 | @Test |
| 44 | public void basicClasses() { | 44 | public void basicClasses() { |
| 45 | assertMapping(newClass("none/a"), newClass("deobf/A_Basic")); | 45 | assertMapping(newClass("a"), newClass("deobf/A_Basic")); |
| 46 | assertMapping(newClass("none/b"), newClass("deobf/B_BaseClass")); | 46 | assertMapping(newClass("b"), newClass("deobf/B_BaseClass")); |
| 47 | assertMapping(newClass("none/c"), newClass("deobf/C_SubClass")); | 47 | assertMapping(newClass("c"), newClass("deobf/C_SubClass")); |
| 48 | } | 48 | } |
| 49 | 49 | ||
| 50 | @Test | 50 | @Test |
| 51 | public void basicFields() { | 51 | public void basicFields() { |
| 52 | assertMapping(newField("none/a", "a", "I"), newField("deobf/A_Basic", "f1", "I")); | 52 | assertMapping(newField("a", "a", "I"), newField("deobf/A_Basic", "f1", "I")); |
| 53 | assertMapping(newField("none/a", "a", "F"), newField("deobf/A_Basic", "f2", "F")); | 53 | assertMapping(newField("a", "a", "F"), newField("deobf/A_Basic", "f2", "F")); |
| 54 | assertMapping(newField("none/a", "a", "Ljava/lang/String;"), newField("deobf/A_Basic", "f3", "Ljava/lang/String;")); | 54 | assertMapping(newField("a", "a", "Ljava/lang/String;"), newField("deobf/A_Basic", "f3", "Ljava/lang/String;")); |
| 55 | } | 55 | } |
| 56 | 56 | ||
| 57 | @Test | 57 | @Test |
| 58 | public void basicMethods() { | 58 | public void basicMethods() { |
| 59 | assertMapping(newMethod("none/a", "a", "()V"), newMethod("deobf/A_Basic", "m1", "()V")); | 59 | assertMapping(newMethod("a", "a", "()V"), newMethod("deobf/A_Basic", "m1", "()V")); |
| 60 | assertMapping(newMethod("none/a", "a", "()I"), newMethod("deobf/A_Basic", "m2", "()I")); | 60 | assertMapping(newMethod("a", "a", "()I"), newMethod("deobf/A_Basic", "m2", "()I")); |
| 61 | assertMapping(newMethod("none/a", "a", "(I)V"), newMethod("deobf/A_Basic", "m3", "(I)V")); | 61 | assertMapping(newMethod("a", "a", "(I)V"), newMethod("deobf/A_Basic", "m3", "(I)V")); |
| 62 | assertMapping(newMethod("none/a", "a", "(I)I"), newMethod("deobf/A_Basic", "m4", "(I)I")); | 62 | assertMapping(newMethod("a", "a", "(I)I"), newMethod("deobf/A_Basic", "m4", "(I)I")); |
| 63 | } | 63 | } |
| 64 | 64 | ||
| 65 | // TODO: basic constructors | 65 | // TODO: basic constructors |
| 66 | 66 | ||
| 67 | @Test | 67 | @Test |
| 68 | public void inheritanceFields() { | 68 | public void inheritanceFields() { |
| 69 | assertMapping(newField("none/b", "a", "I"), newField("deobf/B_BaseClass", "f1", "I")); | 69 | assertMapping(newField("b", "a", "I"), newField("deobf/B_BaseClass", "f1", "I")); |
| 70 | assertMapping(newField("none/b", "a", "C"), newField("deobf/B_BaseClass", "f2", "C")); | 70 | assertMapping(newField("b", "a", "C"), newField("deobf/B_BaseClass", "f2", "C")); |
| 71 | assertMapping(newField("none/c", "b", "I"), newField("deobf/C_SubClass", "f3", "I")); | 71 | assertMapping(newField("c", "b", "I"), newField("deobf/C_SubClass", "f3", "I")); |
| 72 | assertMapping(newField("none/c", "c", "I"), newField("deobf/C_SubClass", "f4", "I")); | 72 | assertMapping(newField("c", "c", "I"), newField("deobf/C_SubClass", "f4", "I")); |
| 73 | } | 73 | } |
| 74 | 74 | ||
| 75 | @Test | 75 | @Test |
| 76 | public void inheritanceFieldsShadowing() { | 76 | public void inheritanceFieldsShadowing() { |
| 77 | assertMapping(newField("none/c", "b", "C"), newField("deobf/C_SubClass", "f2", "C")); | 77 | assertMapping(newField("c", "b", "C"), newField("deobf/C_SubClass", "f2", "C")); |
| 78 | } | 78 | } |
| 79 | 79 | ||
| 80 | @Test | 80 | @Test |
| 81 | public void inheritanceFieldsBySubClass() { | 81 | public void inheritanceFieldsBySubClass() { |
| 82 | assertMapping(newField("none/c", "a", "I"), newField("deobf/C_SubClass", "f1", "I")); | 82 | assertMapping(newField("c", "a", "I"), newField("deobf/C_SubClass", "f1", "I")); |
| 83 | // NOTE: can't reference b.C by subclass since it's shadowed | 83 | // NOTE: can't reference b.C by subclass since it's shadowed |
| 84 | } | 84 | } |
| 85 | 85 | ||
| 86 | @Test | 86 | @Test |
| 87 | public void inheritanceMethods() { | 87 | public void inheritanceMethods() { |
| 88 | assertMapping(newMethod("none/b", "a", "()I"), newMethod("deobf/B_BaseClass", "m1", "()I")); | 88 | assertMapping(newMethod("b", "a", "()I"), newMethod("deobf/B_BaseClass", "m1", "()I")); |
| 89 | assertMapping(newMethod("none/b", "b", "()I"), newMethod("deobf/B_BaseClass", "m2", "()I")); | 89 | assertMapping(newMethod("b", "b", "()I"), newMethod("deobf/B_BaseClass", "m2", "()I")); |
| 90 | assertMapping(newMethod("none/c", "c", "()I"), newMethod("deobf/C_SubClass", "m3", "()I")); | 90 | assertMapping(newMethod("c", "c", "()I"), newMethod("deobf/C_SubClass", "m3", "()I")); |
| 91 | } | 91 | } |
| 92 | 92 | ||
| 93 | @Test | 93 | @Test |
| 94 | public void inheritanceMethodsOverrides() { | 94 | public void inheritanceMethodsOverrides() { |
| 95 | assertMapping(newMethod("none/c", "a", "()I"), newMethod("deobf/C_SubClass", "m1", "()I")); | 95 | assertMapping(newMethod("c", "a", "()I"), newMethod("deobf/C_SubClass", "m1", "()I")); |
| 96 | } | 96 | } |
| 97 | 97 | ||
| 98 | @Test | 98 | @Test |
| 99 | public void inheritanceMethodsBySubClass() { | 99 | public void inheritanceMethodsBySubClass() { |
| 100 | assertMapping(newMethod("none/c", "b", "()I"), newMethod("deobf/C_SubClass", "m2", "()I")); | 100 | assertMapping(newMethod("c", "b", "()I"), newMethod("deobf/C_SubClass", "m2", "()I")); |
| 101 | } | 101 | } |
| 102 | 102 | ||
| 103 | @Test | 103 | @Test |
| 104 | public void innerClasses() { | 104 | public void innerClasses() { |
| 105 | 105 | ||
| 106 | // classes | 106 | // classes |
| 107 | assertMapping(newClass("none/g"), newClass("deobf/G_OuterClass")); | 107 | assertMapping(newClass("g"), newClass("deobf/G_OuterClass")); |
| 108 | assertMapping(newClass("none/g$a"), newClass("deobf/G_OuterClass$A_InnerClass")); | 108 | assertMapping(newClass("g$a"), newClass("deobf/G_OuterClass$A_InnerClass")); |
| 109 | assertMapping(newClass("none/g$a$a"), newClass("deobf/G_OuterClass$A_InnerClass$A_InnerInnerClass")); | 109 | assertMapping(newClass("g$a$a"), newClass("deobf/G_OuterClass$A_InnerClass$A_InnerInnerClass")); |
| 110 | assertMapping(newClass("none/g$b"), newClass("deobf/G_OuterClass$b")); | 110 | assertMapping(newClass("g$b"), newClass("deobf/G_OuterClass$b")); |
| 111 | assertMapping(newClass("none/g$b$a"), newClass("deobf/G_OuterClass$b$A_NamedInnerClass")); | 111 | assertMapping(newClass("g$b$a"), newClass("deobf/G_OuterClass$b$A_NamedInnerClass")); |
| 112 | 112 | ||
| 113 | // fields | 113 | // fields |
| 114 | assertMapping(newField("none/g$a", "a", "I"), newField("deobf/G_OuterClass$A_InnerClass", "f1", "I")); | 114 | assertMapping(newField("g$a", "a", "I"), newField("deobf/G_OuterClass$A_InnerClass", "f1", "I")); |
| 115 | assertMapping(newField("none/g$a", "a", "Ljava/lang/String;"), newField("deobf/G_OuterClass$A_InnerClass", "f2", "Ljava/lang/String;")); | 115 | assertMapping(newField("g$a", "a", "Ljava/lang/String;"), newField("deobf/G_OuterClass$A_InnerClass", "f2", "Ljava/lang/String;")); |
| 116 | assertMapping(newField("none/g$a$a", "a", "I"), newField("deobf/G_OuterClass$A_InnerClass$A_InnerInnerClass", "f3", "I")); | 116 | assertMapping(newField("g$a$a", "a", "I"), newField("deobf/G_OuterClass$A_InnerClass$A_InnerInnerClass", "f3", "I")); |
| 117 | assertMapping(newField("none/g$b$a", "a", "I"), newField("deobf/G_OuterClass$b$A_NamedInnerClass", "f4", "I")); | 117 | assertMapping(newField("g$b$a", "a", "I"), newField("deobf/G_OuterClass$b$A_NamedInnerClass", "f4", "I")); |
| 118 | 118 | ||
| 119 | // methods | 119 | // methods |
| 120 | assertMapping(newMethod("none/g$a", "a", "()V"), newMethod("deobf/G_OuterClass$A_InnerClass", "m1", "()V")); | 120 | assertMapping(newMethod("g$a", "a", "()V"), newMethod("deobf/G_OuterClass$A_InnerClass", "m1", "()V")); |
| 121 | assertMapping(newMethod("none/g$a$a", "a", "()V"), newMethod("deobf/G_OuterClass$A_InnerClass$A_InnerInnerClass", "m2", "()V")); | 121 | assertMapping(newMethod("g$a$a", "a", "()V"), newMethod("deobf/G_OuterClass$A_InnerClass$A_InnerInnerClass", "m2", "()V")); |
| 122 | } | 122 | } |
| 123 | 123 | ||
| 124 | @Test | 124 | @Test |
| 125 | public void namelessClass() { | 125 | public void namelessClass() { |
| 126 | assertMapping(newClass("none/h"), newClass("none/h")); | 126 | assertMapping(newClass("h"), newClass("h")); |
| 127 | } | 127 | } |
| 128 | 128 | ||
| 129 | @Test | 129 | @Test |
| 130 | public void testGenerics() { | 130 | public void testGenerics() { |
| 131 | 131 | ||
| 132 | // classes | 132 | // classes |
| 133 | assertMapping(newClass("none/i"), newClass("deobf/I_Generics")); | 133 | assertMapping(newClass("i"), newClass("deobf/I_Generics")); |
| 134 | assertMapping(newClass("none/i$a"), newClass("deobf/I_Generics$A_Type")); | 134 | assertMapping(newClass("i$a"), newClass("deobf/I_Generics$A_Type")); |
| 135 | assertMapping(newClass("none/i$b"), newClass("deobf/I_Generics$B_Generic")); | 135 | assertMapping(newClass("i$b"), newClass("deobf/I_Generics$B_Generic")); |
| 136 | 136 | ||
| 137 | // fields | 137 | // fields |
| 138 | assertMapping(newField("none/i", "a", "Ljava/util/List;"), newField("deobf/I_Generics", "f1", "Ljava/util/List;")); | 138 | assertMapping(newField("i", "a", "Ljava/util/List;"), newField("deobf/I_Generics", "f1", "Ljava/util/List;")); |
| 139 | assertMapping(newField("none/i", "b", "Ljava/util/List;"), newField("deobf/I_Generics", "f2", "Ljava/util/List;")); | 139 | assertMapping(newField("i", "b", "Ljava/util/List;"), newField("deobf/I_Generics", "f2", "Ljava/util/List;")); |
| 140 | assertMapping(newField("none/i", "a", "Ljava/util/Map;"), newField("deobf/I_Generics", "f3", "Ljava/util/Map;")); | 140 | assertMapping(newField("i", "a", "Ljava/util/Map;"), newField("deobf/I_Generics", "f3", "Ljava/util/Map;")); |
| 141 | assertMapping(newField("none/i$b", "a", "Ljava/lang/Object;"), newField("deobf/I_Generics$B_Generic", "f4", "Ljava/lang/Object;")); | 141 | assertMapping(newField("i$b", "a", "Ljava/lang/Object;"), newField("deobf/I_Generics$B_Generic", "f4", "Ljava/lang/Object;")); |
| 142 | assertMapping(newField("none/i", "a", "Lnone/i$b;"), newField("deobf/I_Generics", "f5", "Ldeobf/I_Generics$B_Generic;")); | 142 | assertMapping(newField("i", "a", "Li$b;"), newField("deobf/I_Generics", "f5", "Ldeobf/I_Generics$B_Generic;")); |
| 143 | assertMapping(newField("none/i", "b", "Lnone/i$b;"), newField("deobf/I_Generics", "f6", "Ldeobf/I_Generics$B_Generic;")); | 143 | assertMapping(newField("i", "b", "Li$b;"), newField("deobf/I_Generics", "f6", "Ldeobf/I_Generics$B_Generic;")); |
| 144 | 144 | ||
| 145 | // methods | 145 | // methods |
| 146 | assertMapping(newMethod("none/i$b", "a", "()Ljava/lang/Object;"), newMethod("deobf/I_Generics$B_Generic", "m1", "()Ljava/lang/Object;")); | 146 | assertMapping(newMethod("i$b", "a", "()Ljava/lang/Object;"), newMethod("deobf/I_Generics$B_Generic", "m1", "()Ljava/lang/Object;")); |
| 147 | } | 147 | } |
| 148 | 148 | ||
| 149 | private void assertMapping(Entry obf, Entry deobf) { | 149 | private void assertMapping(Entry obf, Entry deobf) { |