Don't ignore methods of Object in tests
Ignore methods of kotlin.Any instead
This commit is contained in:
+1
@@ -6,6 +6,7 @@ public abstract class ClassDoesNotOverrideMethod : java.util.Date {
|
||||
invisible_fake final override /*1*/ /*fake_override*/ var fastTime: kotlin.Long
|
||||
public open override /*1*/ /*fake_override*/ fun after(/*0*/ p0: java.util.Date): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun before(/*0*/ p0: java.util.Date): kotlin.Boolean
|
||||
public open override /*1*/ /*fake_override*/ fun clone(): kotlin.Any
|
||||
public open override /*1*/ /*fake_override*/ fun compareTo(/*0*/ other: java.util.Date): kotlin.Int
|
||||
invisible_fake final override /*1*/ /*fake_override*/ fun getCalendarDate(): sun.util.calendar.BaseCalendar.Date?
|
||||
kotlin.deprecated(value = "Deprecated in Java": kotlin.String) public open override /*1*/ /*fake_override*/ fun getDate(): kotlin.Int
|
||||
|
||||
@@ -46,7 +46,7 @@ public class LoadBuiltinsTest extends KotlinTestWithEnvironment {
|
||||
|
||||
public void testBuiltIns() throws Exception {
|
||||
RecursiveDescriptorComparator.Configuration configuration =
|
||||
RecursiveDescriptorComparator.RECURSIVE_ALL.includeMethodsOfObject(false).withRenderer(
|
||||
RecursiveDescriptorComparator.RECURSIVE_ALL.includeMethodsOfKotlinAny(false).withRenderer(
|
||||
new DescriptorRendererBuilder()
|
||||
.setWithDefinedIn(false)
|
||||
.setOverrideRenderingPolicy(DescriptorRenderer.OverrideRenderingPolicy.RENDER_OPEN_OVERRIDE)
|
||||
|
||||
@@ -61,8 +61,7 @@ public class RecursiveDescriptorComparator {
|
||||
Predicates.<FqName>alwaysTrue(),
|
||||
FORBID_ERROR_TYPES, DEFAULT_RENDERER);
|
||||
|
||||
private static final ImmutableSet<String> JAVA_OBJECT_METHOD_NAMES = ImmutableSet.of(
|
||||
"equals", "hashCode", "finalize", "wait", "notify", "notifyAll", "toString", "clone", "getClass");
|
||||
private static final ImmutableSet<String> KOTLIN_ANY_METHOD_NAMES = ImmutableSet.of("equals", "hashCode", "toString");
|
||||
|
||||
private final Configuration conf;
|
||||
|
||||
@@ -142,8 +141,8 @@ public class RecursiveDescriptorComparator {
|
||||
private boolean shouldSkip(@NotNull DeclarationDescriptor subDescriptor) {
|
||||
return subDescriptor.getContainingDeclaration() instanceof ClassDescriptor
|
||||
&& subDescriptor instanceof FunctionDescriptor
|
||||
&& JAVA_OBJECT_METHOD_NAMES.contains(subDescriptor.getName().asString())
|
||||
&& !conf.includeMethodsOfJavaObject
|
||||
&& KOTLIN_ANY_METHOD_NAMES.contains(subDescriptor.getName().asString())
|
||||
&& !conf.includeMethodsOfKotlinAny
|
||||
||
|
||||
subDescriptor instanceof PackageViewDescriptor
|
||||
&& !conf.recurseIntoPackage.apply(((PackageViewDescriptor) subDescriptor).getFqName());
|
||||
@@ -232,7 +231,7 @@ public class RecursiveDescriptorComparator {
|
||||
public static class Configuration {
|
||||
private final boolean checkPrimaryConstructors;
|
||||
private final boolean checkPropertyAccessors;
|
||||
private final boolean includeMethodsOfJavaObject;
|
||||
private final boolean includeMethodsOfKotlinAny;
|
||||
private final Predicate<FqName> recurseIntoPackage;
|
||||
private final DescriptorRenderer renderer;
|
||||
|
||||
@@ -241,46 +240,46 @@ public class RecursiveDescriptorComparator {
|
||||
public Configuration(
|
||||
boolean checkPrimaryConstructors,
|
||||
boolean checkPropertyAccessors,
|
||||
boolean includeMethodsOfJavaObject,
|
||||
boolean includeMethodsOfKotlinAny,
|
||||
Predicate<FqName> recurseIntoPackage,
|
||||
DescriptorValidator.ValidationVisitor validationStrategy,
|
||||
DescriptorRenderer renderer
|
||||
) {
|
||||
this.checkPrimaryConstructors = checkPrimaryConstructors;
|
||||
this.checkPropertyAccessors = checkPropertyAccessors;
|
||||
this.includeMethodsOfJavaObject = includeMethodsOfJavaObject;
|
||||
this.includeMethodsOfKotlinAny = includeMethodsOfKotlinAny;
|
||||
this.recurseIntoPackage = recurseIntoPackage;
|
||||
this.validationStrategy = validationStrategy;
|
||||
this.renderer = renderer;
|
||||
}
|
||||
|
||||
public Configuration filterRecursion(@NotNull Predicate<FqName> recurseIntoPackage) {
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfJavaObject, recurseIntoPackage,
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfKotlinAny, recurseIntoPackage,
|
||||
validationStrategy, renderer);
|
||||
}
|
||||
|
||||
public Configuration checkPrimaryConstructors(boolean checkPrimaryConstructors) {
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfJavaObject, recurseIntoPackage,
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfKotlinAny, recurseIntoPackage,
|
||||
validationStrategy, renderer);
|
||||
}
|
||||
|
||||
public Configuration checkPropertyAccessors(boolean checkPropertyAccessors) {
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfJavaObject, recurseIntoPackage,
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfKotlinAny, recurseIntoPackage,
|
||||
validationStrategy, renderer);
|
||||
}
|
||||
|
||||
public Configuration includeMethodsOfObject(boolean includeMethodsOfJavaObject) {
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfJavaObject, recurseIntoPackage,
|
||||
public Configuration includeMethodsOfKotlinAny(boolean includeMethodsOfKotlinAny) {
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfKotlinAny, recurseIntoPackage,
|
||||
validationStrategy, renderer);
|
||||
}
|
||||
|
||||
public Configuration withValidationStrategy(@NotNull DescriptorValidator.ValidationVisitor validationStrategy) {
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfJavaObject, recurseIntoPackage,
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfKotlinAny, recurseIntoPackage,
|
||||
validationStrategy, renderer);
|
||||
}
|
||||
|
||||
public Configuration withRenderer(@NotNull DescriptorRenderer renderer) {
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfJavaObject, recurseIntoPackage,
|
||||
return new Configuration(checkPrimaryConstructors, checkPropertyAccessors, includeMethodsOfKotlinAny, recurseIntoPackage,
|
||||
validationStrategy, renderer);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user