@ -21,11 +21,12 @@ import java.util.Arrays;
@@ -21,11 +21,12 @@ import java.util.Arrays;
import java.util.List ;
import java.util.Set ;
import org.junit.Assume ;
import org.junit.Before ;
import org.junit.Test ;
import org.springframework.core.DefaultParameterNameDiscoverer ;
import org.springframework.core.LocalVariableTableParameterNameDiscoverer ;
import org.springframework.core.ParameterNameDiscoverer ;
import org.springframework.core.SpringVersion ;
import org.springframework.security.access.method.P ;
import org.springframework.test.util.ReflectionTestUtils ;
@ -45,6 +46,8 @@ public class DefaultSecurityParameterNameDiscovererTests {
@@ -45,6 +46,8 @@ public class DefaultSecurityParameterNameDiscovererTests {
@Test
public void constructorDefault ( ) {
Assume . assumeTrue ( SpringVersion . getVersion ( ) . startsWith ( "3." ) ) ;
List < ParameterNameDiscoverer > discoverers = ( List < ParameterNameDiscoverer > ) ReflectionTestUtils
. getField ( discoverer , "parameterNameDiscoverers" ) ;
@ -57,11 +60,13 @@ public class DefaultSecurityParameterNameDiscovererTests {
@@ -57,11 +60,13 @@ public class DefaultSecurityParameterNameDiscovererTests {
assertThat ( annotationsToUse ) . containsOnly ( P . class . getName ( ) ) ;
assertThat ( discoverers . get ( 1 ) ) . isInstanceOf (
Default ParameterNameDiscoverer. class ) ;
LocalVariableTable ParameterNameDiscoverer. class ) ;
}
@Test
public void constructorDiscoverers ( ) {
Assume . assumeTrue ( SpringVersion . getVersion ( ) . startsWith ( "3." ) ) ;
discoverer = new DefaultSecurityParameterNameDiscoverer ( Arrays . asList ( new LocalVariableTableParameterNameDiscoverer ( ) ) ) ;
List < ParameterNameDiscoverer > discoverers = ( List < ParameterNameDiscoverer > ) ReflectionTestUtils
@ -78,6 +83,46 @@ public class DefaultSecurityParameterNameDiscovererTests {
@@ -78,6 +83,46 @@ public class DefaultSecurityParameterNameDiscovererTests {
assertThat ( annotationsToUse ) . containsOnly ( P . class . getName ( ) ) ;
assertThat ( discoverers . get ( 2 ) ) . isInstanceOf (
DefaultParameterNameDiscoverer . class ) ;
LocalVariableTableParameterNameDiscoverer . class ) ;
}
@Test
public void constructorDefaultSpring4 ( ) {
Assume . assumeTrue ( SpringVersion . getVersion ( ) . startsWith ( "4." ) ) ;
List < ParameterNameDiscoverer > discoverers = ( List < ParameterNameDiscoverer > ) ReflectionTestUtils
. getField ( discoverer , "parameterNameDiscoverers" ) ;
assertThat ( discoverers . size ( ) ) . isEqualTo ( 2 ) ;
ParameterNameDiscoverer annotationDisc = discoverers . get ( 0 ) ;
assertThat ( annotationDisc ) . isInstanceOf (
AnnotationParameterNameDiscoverer . class ) ;
Set < String > annotationsToUse = ( Set < String > ) ReflectionTestUtils . getField ( annotationDisc , "annotationClassesToUse" ) ;
assertThat ( annotationsToUse ) . containsOnly ( P . class . getName ( ) ) ;
assertThat ( discoverers . get ( 1 ) . getClass ( ) . getName ( ) ) . isEqualTo ( "org.springframework.core.DefaultParameterNameDiscoverer" ) ;
}
@Test
public void constructorDiscoverersSpring4 ( ) {
Assume . assumeTrue ( SpringVersion . getVersion ( ) . startsWith ( "4." ) ) ;
discoverer = new DefaultSecurityParameterNameDiscoverer ( Arrays . asList ( new LocalVariableTableParameterNameDiscoverer ( ) ) ) ;
List < ParameterNameDiscoverer > discoverers = ( List < ParameterNameDiscoverer > ) ReflectionTestUtils
. getField ( discoverer , "parameterNameDiscoverers" ) ;
assertThat ( discoverers . size ( ) ) . isEqualTo ( 3 ) ;
assertThat ( discoverers . get ( 0 ) ) . isInstanceOf (
LocalVariableTableParameterNameDiscoverer . class ) ;
ParameterNameDiscoverer annotationDisc = discoverers . get ( 1 ) ;
assertThat ( annotationDisc ) . isInstanceOf (
AnnotationParameterNameDiscoverer . class ) ;
Set < String > annotationsToUse = ( Set < String > ) ReflectionTestUtils . getField ( annotationDisc , "annotationClassesToUse" ) ;
assertThat ( annotationsToUse ) . containsOnly ( P . class . getName ( ) ) ;
assertThat ( discoverers . get ( 1 ) . getClass ( ) . getName ( ) ) . isEqualTo ( "org.springframework.core.DefaultParameterNameDiscoverer" ) ;
}
}