Home / Class/ AutoConfigurationsTests Class — spring-boot Architecture

AutoConfigurationsTests Class — spring-boot Architecture

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

Entity Profile

Relationship Graph

Source Code

core/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/AutoConfigurationsTests.java lines 32–80

class AutoConfigurationsTests {

	@Test
	void ofShouldCreateOrderedConfigurations() {
		Configurations configurations = AutoConfigurations.of(AutoConfigureA.class, AutoConfigureB.class);
		assertThat(Configurations.getClasses(configurations)).containsExactly(AutoConfigureB.class,
				AutoConfigureA.class);
	}

	@Test
	void whenHasReplacementForAutoConfigureAfterShouldCreateOrderedConfigurations() {
		Configurations configurations = new AutoConfigurations(this::replaceB,
				Arrays.asList(AutoConfigureA.class, AutoConfigureB2.class));
		assertThat(Configurations.getClasses(configurations)).containsExactly(AutoConfigureB2.class,
				AutoConfigureA.class);
	}

	@Test
	void whenHasReplacementForClassShouldReplaceClass() {
		Configurations configurations = new AutoConfigurations(this::replaceB,
				Arrays.asList(AutoConfigureA.class, AutoConfigureB.class));
		assertThat(Configurations.getClasses(configurations)).containsExactly(AutoConfigureB2.class,
				AutoConfigureA.class);
	}

	@Test
	void getBeanNameShouldUseClassName() {
		Configurations configurations = AutoConfigurations.of(AutoConfigureA.class, AutoConfigureB.class);
		assertThat(configurations.getBeanName(AutoConfigureA.class)).isEqualTo(AutoConfigureA.class.getName());
	}

	private String replaceB(String className) {
		return (!AutoConfigureB.class.getName().equals(className)) ? className : AutoConfigureB2.class.getName();
	}

	@AutoConfigureAfter(AutoConfigureB.class)
	static class AutoConfigureA {

	}

	static class AutoConfigureB {

	}

	static class AutoConfigureB2 {

	}

}

Domain

Analyze Your Own Codebase

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

Try Supermodel Free