Search in sources :

Example 1 with GET

use of com.tngtech.archunit.core.domain.JavaFieldAccess.AccessType.GET in project ArchUnit by TNG.

the class ClassFileImporterAccessesTest method imports_parameter_types_of_generic_call_target_as_raw_types.

@Test
public void imports_parameter_types_of_generic_call_target_as_raw_types() {
    class Target {

        @SuppressWarnings({ "unused", "SameParameterValue" })
        <T> void genericMethod(T param) {
        }
    }
    class Origin {

        @SuppressWarnings("unused")
        void call(Target target) {
            target.genericMethod(null);
        }
    }
    JavaMethodCall call = getOnlyElement(new ClassFileImporter().importClasses(Origin.class, Target.class).get(Origin.class).getMethodCallsFromSelf());
    assertThat(call.getTarget().getParameterTypes()).isEqualTo(call.getTarget().getRawParameterTypes());
}
Also used : MethodCallTarget(com.tngtech.archunit.core.domain.AccessTarget.MethodCallTarget) FieldAccessTarget(com.tngtech.archunit.core.domain.AccessTarget.FieldAccessTarget) ClassCallingSpecialTarget(com.tngtech.archunit.core.importer.testexamples.specialtargets.ClassCallingSpecialTarget) ConstructorCallTarget(com.tngtech.archunit.core.domain.AccessTarget.ConstructorCallTarget) AccessTarget(com.tngtech.archunit.core.domain.AccessTarget) SET(com.tngtech.archunit.core.domain.JavaFieldAccess.AccessType.SET) GET(com.tngtech.archunit.core.domain.JavaFieldAccess.AccessType.GET) JavaMethodCall(com.tngtech.archunit.core.domain.JavaMethodCall) Test(org.junit.Test)

Aggregations

AccessTarget (com.tngtech.archunit.core.domain.AccessTarget)1 ConstructorCallTarget (com.tngtech.archunit.core.domain.AccessTarget.ConstructorCallTarget)1 FieldAccessTarget (com.tngtech.archunit.core.domain.AccessTarget.FieldAccessTarget)1 MethodCallTarget (com.tngtech.archunit.core.domain.AccessTarget.MethodCallTarget)1 GET (com.tngtech.archunit.core.domain.JavaFieldAccess.AccessType.GET)1 SET (com.tngtech.archunit.core.domain.JavaFieldAccess.AccessType.SET)1 JavaMethodCall (com.tngtech.archunit.core.domain.JavaMethodCall)1 ClassCallingSpecialTarget (com.tngtech.archunit.core.importer.testexamples.specialtargets.ClassCallingSpecialTarget)1 Test (org.junit.Test)1