Refactor: process mentions of class object
Rename usages that refer to "default object" concept now Test data file names are left as is
This commit is contained in:
@@ -144,8 +144,8 @@ public class ClassGenTest extends CodegenTestCase {
|
||||
loadFile("classes/classObjectIsInnerClass.kt");
|
||||
GeneratedClassLoader loader = generateAndCreateClassLoader();
|
||||
Class<?> a = loader.loadClass("A");
|
||||
Class<?> aClassObject = loader.loadClass("A$" + SpecialNames.DEFAULT_NAME_FOR_DEFAULT_OBJECT.asString());
|
||||
assertSameElements(a.getDeclaredClasses(), aClassObject);
|
||||
assertEquals(a, aClassObject.getDeclaringClass());
|
||||
Class<?> defaultObject = loader.loadClass("A$" + SpecialNames.DEFAULT_NAME_FOR_DEFAULT_OBJECT.asString());
|
||||
assertSameElements(a.getDeclaredClasses(), defaultObject);
|
||||
assertEquals(a, defaultObject.getDeclaringClass());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,14 +44,14 @@ public class InnerClassInfoGenTest extends CodegenTestCase {
|
||||
public void testInnerClassInfo() {
|
||||
InnerClassAttribute innerB = new InnerClassAttribute("A$B", "A", "B", ACC_PUBLIC | ACC_STATIC | ACC_FINAL);
|
||||
InnerClassAttribute innerC = new InnerClassAttribute("A$B$C", "A$B", "C", ACC_PUBLIC | ACC_FINAL);
|
||||
String classObjectDefaultName = SpecialNames.DEFAULT_NAME_FOR_DEFAULT_OBJECT.asString();
|
||||
InnerClassAttribute innerAClassObject = new InnerClassAttribute(
|
||||
"A$" + classObjectDefaultName, "A", classObjectDefaultName, ACC_PUBLIC | ACC_STATIC | ACC_FINAL);
|
||||
String defaultObjectDefaultName = SpecialNames.DEFAULT_NAME_FOR_DEFAULT_OBJECT.asString();
|
||||
InnerClassAttribute innerADefaultObject = new InnerClassAttribute(
|
||||
"A$" + defaultObjectDefaultName, "A", defaultObjectDefaultName, ACC_PUBLIC | ACC_STATIC | ACC_FINAL);
|
||||
|
||||
extractAndCompareInnerClasses("A", innerB, innerAClassObject);
|
||||
extractAndCompareInnerClasses("A", innerB, innerADefaultObject);
|
||||
extractAndCompareInnerClasses("A$B", innerB, innerC);
|
||||
extractAndCompareInnerClasses("A$B$C", innerB, innerC);
|
||||
extractAndCompareInnerClasses("A$" + classObjectDefaultName, innerAClassObject);
|
||||
extractAndCompareInnerClasses("A$" + defaultObjectDefaultName, innerADefaultObject);
|
||||
}
|
||||
|
||||
public void testLocalClass() {
|
||||
|
||||
+3
-8
@@ -75,7 +75,9 @@ public abstract class AbstractAnnotationDescriptorResolveTest extends JetLiteFix
|
||||
|
||||
ClassDescriptor myClass = getClassDescriptor(testPackage, "MyClass");
|
||||
checkDescriptor(expectedAnnotation, myClass);
|
||||
checkDescriptor(expectedAnnotation, getClassObjectDescriptor(myClass));
|
||||
ClassDescriptor defaultObjectDescriptor = myClass.getDefaultObjectDescriptor();
|
||||
assert defaultObjectDescriptor != null : "Cannot find default object for class " + myClass.getName();
|
||||
checkDescriptor(expectedAnnotation, defaultObjectDescriptor);
|
||||
checkDescriptor(expectedAnnotation, getInnerClassDescriptor(myClass, "InnerClass"));
|
||||
|
||||
FunctionDescriptor foo = getFunctionDescriptor(myClass, "foo");
|
||||
@@ -199,13 +201,6 @@ public abstract class AbstractAnnotationDescriptorResolveTest extends JetLiteFix
|
||||
return (ClassDescriptor) aClass;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private static ClassDescriptor getClassObjectDescriptor(@NotNull ClassDescriptor classDescriptor) {
|
||||
ClassDescriptor objectDescriptor = classDescriptor.getDefaultObjectDescriptor();
|
||||
assert objectDescriptor != null : "Cannot find class object for class " + classDescriptor.getName();
|
||||
return objectDescriptor;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private static ClassDescriptor getInnerClassDescriptor(@NotNull ClassDescriptor classDescriptor, @NotNull String name) {
|
||||
Name propertyName = Name.identifier(name);
|
||||
|
||||
Reference in New Issue
Block a user