Home / Class/ EnvironmentConverterTests Class — spring-boot Architecture

EnvironmentConverterTests Class — spring-boot Architecture

Architecture documentation for the EnvironmentConverterTests class in EnvironmentConverterTests.java from the spring-boot codebase.

Entity Profile

Source Code

core/spring-boot/src/test/java/org/springframework/boot/EnvironmentConverterTests.java lines 42–118

class EnvironmentConverterTests {

	private final EnvironmentConverter environmentConverter = new EnvironmentConverter(getClass().getClassLoader());

	@Test
	void convertedEnvironmentHasSameActiveProfiles() {
		AbstractEnvironment originalEnvironment = new MockEnvironment();
		originalEnvironment.setActiveProfiles("activeProfile1", "activeProfile2");
		ConfigurableEnvironment convertedEnvironment = this.environmentConverter
			.convertEnvironmentIfNecessary(originalEnvironment, StandardEnvironment.class);
		assertThat(convertedEnvironment.getActiveProfiles()).containsExactly("activeProfile1", "activeProfile2");
	}

	@Test
	void convertedEnvironmentHasSameConversionService() {
		AbstractEnvironment originalEnvironment = new MockEnvironment();
		ConfigurableConversionService conversionService = mock(ConfigurableConversionService.class);
		originalEnvironment.setConversionService(conversionService);
		ConfigurableEnvironment convertedEnvironment = this.environmentConverter
			.convertEnvironmentIfNecessary(originalEnvironment, StandardEnvironment.class);
		assertThat(convertedEnvironment.getConversionService()).isEqualTo(conversionService);
	}

	@Test
	void envClassSameShouldReturnEnvironmentUnconverted() {
		StandardEnvironment standardEnvironment = new StandardEnvironment();
		ConfigurableEnvironment convertedEnvironment = this.environmentConverter
			.convertEnvironmentIfNecessary(standardEnvironment, StandardEnvironment.class);
		assertThat(convertedEnvironment).isSameAs(standardEnvironment);
	}

	@Test
	void standardServletEnvironmentIsConverted() {
		StandardServletEnvironment standardServletEnvironment = new StandardServletEnvironment();
		ConfigurableEnvironment convertedEnvironment = this.environmentConverter
			.convertEnvironmentIfNecessary(standardServletEnvironment, StandardEnvironment.class);
		assertThat(convertedEnvironment).isNotSameAs(standardServletEnvironment);
	}

	@Test
	void servletPropertySourcesAreNotCopiedOverIfNotWebEnvironment() {
		StandardServletEnvironment standardServletEnvironment = new StandardServletEnvironment();
		ConfigurableEnvironment convertedEnvironment = this.environmentConverter
			.convertEnvironmentIfNecessary(standardServletEnvironment, StandardEnvironment.class);
		assertThat(convertedEnvironment).isNotSameAs(standardServletEnvironment);
		Set<String> names = new HashSet<>();
		for (PropertySource<?> propertySource : convertedEnvironment.getPropertySources()) {
			names.add(propertySource.getName());
		}
		assertThat(names).doesNotContain(StandardServletEnvironment.SERVLET_CONTEXT_PROPERTY_SOURCE_NAME,
				StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME,
				StandardServletEnvironment.JNDI_PROPERTY_SOURCE_NAME);
	}

	@Test
	void envClassSameShouldReturnEnvironmentUnconvertedEvenForWeb() {
		StandardServletEnvironment standardServletEnvironment = new StandardServletEnvironment();
		ConfigurableEnvironment convertedEnvironment = this.environmentConverter
			.convertEnvironmentIfNecessary(standardServletEnvironment, StandardServletEnvironment.class);
		assertThat(convertedEnvironment).isSameAs(standardServletEnvironment);
	}

	@Test
	void servletPropertySourcesArePresentWhenTypeToConvertIsWeb() {
		StandardEnvironment standardEnvironment = new StandardEnvironment();
		ConfigurableEnvironment convertedEnvironment = this.environmentConverter
			.convertEnvironmentIfNecessary(standardEnvironment, StandardServletEnvironment.class);
		assertThat(convertedEnvironment).isNotSameAs(standardEnvironment);
		Set<String> names = new HashSet<>();
		for (PropertySource<?> propertySource : convertedEnvironment.getPropertySources()) {
			names.add(propertySource.getName());
		}
		assertThat(names).contains(StandardServletEnvironment.SERVLET_CONTEXT_PROPERTY_SOURCE_NAME,
				StandardServletEnvironment.SERVLET_CONFIG_PROPERTY_SOURCE_NAME);
	}

}

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free