Polish
This commit is contained in:
parent
96adb87bbd
commit
6381fdcb49
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright 2012-2013 the original author or authors.
|
* Copyright 2012-2014 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
|
@ -29,6 +29,7 @@ import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
* data source, the other (main) one would normally be marked as <code>@Primary</code>.
|
* data source, the other (main) one would normally be marked as <code>@Primary</code>.
|
||||||
*
|
*
|
||||||
* @author Dave Syer
|
* @author Dave Syer
|
||||||
|
* @since 1.1.0
|
||||||
*/
|
*/
|
||||||
@Target({ ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER, ElementType.TYPE,
|
@Target({ ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER, ElementType.TYPE,
|
||||||
ElementType.ANNOTATION_TYPE })
|
ElementType.ANNOTATION_TYPE })
|
||||||
|
|
|
@ -30,7 +30,6 @@ import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||||
* properties into the {@link Flyway} instance.
|
* properties into the {@link Flyway} instance.
|
||||||
*
|
*
|
||||||
* @author Dave Syer
|
* @author Dave Syer
|
||||||
*
|
|
||||||
* @since 1.1.0
|
* @since 1.1.0
|
||||||
*/
|
*/
|
||||||
@ConfigurationProperties(prefix = "flyway", ignoreUnknownFields = true)
|
@ConfigurationProperties(prefix = "flyway", ignoreUnknownFields = true)
|
||||||
|
@ -83,7 +82,7 @@ public class FlywayProperties {
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getPassword() {
|
public String getPassword() {
|
||||||
return this.password == null ? "" : this.password;
|
return (this.password == null ? "" : this.password);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setPassword(String password) {
|
public void setPassword(String password) {
|
||||||
|
|
|
@ -67,7 +67,7 @@ public class DeviceResolverAutoConfiguration {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addInterceptors(InterceptorRegistry registry) {
|
public void addInterceptors(InterceptorRegistry registry) {
|
||||||
registry.addInterceptor(deviceResolverHandlerInterceptor);
|
registry.addInterceptor(this.deviceResolverHandlerInterceptor);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -41,7 +41,7 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter
|
||||||
* {@link DeviceResolver} first being registered.
|
* {@link DeviceResolver} first being registered.
|
||||||
*
|
*
|
||||||
* @author Roy Clarkson
|
* @author Roy Clarkson
|
||||||
* @since 1.1
|
* @since 1.1.0
|
||||||
*/
|
*/
|
||||||
@Configuration
|
@Configuration
|
||||||
@ConditionalOnClass({ SitePreferenceHandlerInterceptor.class,
|
@ConditionalOnClass({ SitePreferenceHandlerInterceptor.class,
|
||||||
|
@ -71,7 +71,7 @@ public class SitePreferenceAutoConfiguration {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addInterceptors(InterceptorRegistry registry) {
|
public void addInterceptors(InterceptorRegistry registry) {
|
||||||
registry.addInterceptor(sitePreferenceHandlerInterceptor);
|
registry.addInterceptor(this.sitePreferenceHandlerInterceptor);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -30,7 +30,6 @@ import org.springframework.beans.factory.BeanCreationException;
|
||||||
import org.springframework.boot.autoconfigure.PropertyPlaceholderAutoConfiguration;
|
import org.springframework.boot.autoconfigure.PropertyPlaceholderAutoConfiguration;
|
||||||
import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder;
|
import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder;
|
||||||
import org.springframework.boot.autoconfigure.jdbc.EmbeddedDataSourceConfiguration;
|
import org.springframework.boot.autoconfigure.jdbc.EmbeddedDataSourceConfiguration;
|
||||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
|
||||||
import org.springframework.boot.test.EnvironmentTestUtils;
|
import org.springframework.boot.test.EnvironmentTestUtils;
|
||||||
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
|
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
|
@ -40,7 +39,7 @@ import static org.junit.Assert.assertEquals;
|
||||||
import static org.junit.Assert.assertNotNull;
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tests for {@link LiquibaseAutoConfiguration}.
|
* Tests for {@link FlywayAutoConfiguration}.
|
||||||
*
|
*
|
||||||
* @author Dave Syer
|
* @author Dave Syer
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -16,9 +16,6 @@
|
||||||
|
|
||||||
package org.springframework.boot.autoconfigure.mobile;
|
package org.springframework.boot.autoconfigure.mobile;
|
||||||
|
|
||||||
import static org.junit.Assert.assertNotNull;
|
|
||||||
import static org.junit.Assert.fail;
|
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -39,6 +36,9 @@ import org.springframework.util.ReflectionUtils;
|
||||||
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
|
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
|
||||||
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
|
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
import static org.junit.Assert.fail;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Tests for {@link DeviceResolverAutoConfiguration}.
|
* Tests for {@link DeviceResolverAutoConfiguration}.
|
||||||
*
|
*
|
||||||
|
@ -82,7 +82,8 @@ public class DeviceResolverAutoConfigurationTests {
|
||||||
DeviceResolverAutoConfiguration.class,
|
DeviceResolverAutoConfiguration.class,
|
||||||
PropertyPlaceholderAutoConfiguration.class);
|
PropertyPlaceholderAutoConfiguration.class);
|
||||||
context.refresh();
|
context.refresh();
|
||||||
RequestMappingHandlerMapping mapping = (RequestMappingHandlerMapping) context.getBean("requestMappingHandlerMapping");
|
RequestMappingHandlerMapping mapping = (RequestMappingHandlerMapping) context
|
||||||
|
.getBean("requestMappingHandlerMapping");
|
||||||
Field interceptorsField = ReflectionUtils.findField(
|
Field interceptorsField = ReflectionUtils.findField(
|
||||||
RequestMappingHandlerMapping.class, "interceptors");
|
RequestMappingHandlerMapping.class, "interceptors");
|
||||||
interceptorsField.setAccessible(true);
|
interceptorsField.setAccessible(true);
|
||||||
|
|
|
@ -1646,14 +1646,15 @@ interaction. For Example:
|
||||||
}
|
}
|
||||||
----
|
----
|
||||||
|
|
||||||
|
NOTE: Spring's test framework will cache application contexts between tests. Therefore,
|
||||||
|
as long as your tests share the same configuration, the time consuming process of starting
|
||||||
|
and stopping the server will only happen once, regardless of the number of tests that
|
||||||
|
actually run.
|
||||||
|
|
||||||
To change the port you can add environment properties to `@IntegrationTest` as colon- or
|
To change the port you can add environment properties to `@IntegrationTest` as colon- or
|
||||||
equals-separated name-value pairs, e.g. `@IntegrationTest("server.port:9000")`.
|
equals-separated name-value pairs, e.g. `@IntegrationTest("server.port:9000")`.
|
||||||
|
Additionally you can set the `server.port` and `management.port` properties to `0`
|
||||||
As long as you use the same configuration, the context will be cached amongst different
|
in order to run your integration tests using random ports. For example:
|
||||||
tests by default. You can therefore use this feature to run a battery of integration tests
|
|
||||||
where the server would actually start prior to the tests. In that case, it would be better
|
|
||||||
to make sure that your integration tests use a random port for the main server and the
|
|
||||||
management one, something like:
|
|
||||||
|
|
||||||
[source,java,indent=0,subs="verbatim,quotes,attributes"]
|
[source,java,indent=0,subs="verbatim,quotes,attributes"]
|
||||||
----
|
----
|
||||||
|
@ -1661,13 +1662,18 @@ management one, something like:
|
||||||
@SpringApplicationConfiguration(classes = MyApplication.class)
|
@SpringApplicationConfiguration(classes = MyApplication.class)
|
||||||
@WebAppConfiguration
|
@WebAppConfiguration
|
||||||
@IntegrationTest({"server.port=0", "management.port=0"})
|
@IntegrationTest({"server.port=0", "management.port=0"})
|
||||||
public class SomeIntegrationTests { ... }
|
public class SomeIntegrationTests {
|
||||||
|
|
||||||
|
// ...
|
||||||
|
|
||||||
|
}
|
||||||
----
|
----
|
||||||
|
|
||||||
See <<howto-discover-the-http-port-at-runtime>> for a description of how you can discover
|
See <<howto-discover-the-http-port-at-runtime>> for a description of how you can discover
|
||||||
the actual port that was allocated for the duration of the tests.
|
the actual port that was allocated for the duration of the tests.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[[boot-features-test-utilities]]
|
[[boot-features-test-utilities]]
|
||||||
=== Test utilities
|
=== Test utilities
|
||||||
A few test utility classes are packaged as part of `spring-boot` that are generally
|
A few test utility classes are packaged as part of `spring-boot` that are generally
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* Copyright 2012-2013 the original author or authors.
|
* Copyright 2012-2014 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
|
|
|
@ -179,8 +179,8 @@ public class ConfigFileApplicationListener implements
|
||||||
try {
|
try {
|
||||||
binder.bindPropertiesToTarget();
|
binder.bindPropertiesToTarget();
|
||||||
}
|
}
|
||||||
catch (BindException e) {
|
catch (BindException ex) {
|
||||||
throw new IllegalStateException("Cannot bind to SpringApplication", e);
|
throw new IllegalStateException("Cannot bind to SpringApplication", ex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,19 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2012-2014 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.boot.bind;
|
package org.springframework.boot.bind;
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
@ -20,6 +36,11 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
import static org.hamcrest.Matchers.is;
|
import static org.hamcrest.Matchers.is;
|
||||||
import static org.junit.Assert.assertThat;
|
import static org.junit.Assert.assertThat;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tests for {@link PropertySourcesPropertyValues} binding.
|
||||||
|
*
|
||||||
|
* @author Dave Syer
|
||||||
|
*/
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@SpringApplicationConfiguration(classes = TestConfig.class)
|
@SpringApplicationConfiguration(classes = TestConfig.class)
|
||||||
@IntegrationTest
|
@IntegrationTest
|
||||||
|
|
|
@ -1,3 +1,19 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2012-2014 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.boot.bind;
|
package org.springframework.boot.bind;
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
@ -19,6 +35,11 @@ import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||||
import static org.hamcrest.Matchers.is;
|
import static org.hamcrest.Matchers.is;
|
||||||
import static org.junit.Assert.assertThat;
|
import static org.junit.Assert.assertThat;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tests for {@link PropertySourcesPropertyValues} binding.
|
||||||
|
*
|
||||||
|
* @author Dave Syer
|
||||||
|
*/
|
||||||
@RunWith(SpringJUnit4ClassRunner.class)
|
@RunWith(SpringJUnit4ClassRunner.class)
|
||||||
@SpringApplicationConfiguration(classes = TestConfig.class)
|
@SpringApplicationConfiguration(classes = TestConfig.class)
|
||||||
@IntegrationTest
|
@IntegrationTest
|
||||||
|
|
Loading…
Reference in New Issue