Add test for StandardReflectionParameterNameDiscoverer

Added test to StandardReflectionParameterNameDiscoverer that
demonstrates discovering of parameter names on an interface.

Issue: SPR-9643
This commit is contained in:
Rob Winch 2013-09-13 21:23:44 -07:00
parent c9ce7aac37
commit 0ee910c61a
2 changed files with 62 additions and 9 deletions

View File

@ -23,15 +23,6 @@ configure(allprojects) { project ->
apply plugin: "test-source-set-dependencies"
apply from: "${gradleScriptDir}/ide.gradle"
compileJava {
sourceCompatibility=1.6
targetCompatibility=1.6
}
compileTestJava {
sourceCompatibility=1.8
targetCompatibility=1.8
}
[compileJava, compileTestJava]*.options*.compilerArgs = [
"-Xlint:serial",
"-Xlint:varargs",
@ -53,6 +44,17 @@ configure(allprojects) { project ->
"-Xlint:-unchecked" // TODO enable and fix warnings
]
compileJava {
sourceCompatibility=1.6
targetCompatibility=1.6
}
compileTestJava {
sourceCompatibility=1.8
targetCompatibility=1.8
compileTestJava.options.compilerArgs += "-parameters"
}
sourceSets.test.resources.srcDirs = ["src/test/resources", "src/test/java"]
test {

View File

@ -0,0 +1,51 @@
/*
* Copyright 2002-2013 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.core;
import org.junit.Before;
import org.junit.Test;
import org.springframework.util.ReflectionUtils;
import java.lang.reflect.Method;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
/**
* Tests for StandardReflectionParameterNameDiscoverer
*
* @author Rob Winch
*/
public class StandardReflectionParameterNameDiscoverTests {
private ParameterNameDiscoverer parameterNameDiscoverer;
@Before
public void setup() {
parameterNameDiscoverer = new StandardReflectionParameterNameDiscoverer();
}
@Test
public void getParameterNamesOnInterface() {
Method method = ReflectionUtils.findMethod(MessageService.class,"sendMessage", String.class);
String[] actualParams = parameterNameDiscoverer.getParameterNames(method);
assertThat(actualParams, is(new String[]{"message"}));
}
public interface MessageService {
void sendMessage(String message);
}
}