OriginTests Class — spring-boot Architecture
Architecture documentation for the OriginTests class in OriginTests.java from the spring-boot codebase.
Entity Profile
Source Code
core/spring-boot/src/test/java/org/springframework/boot/origin/OriginTests.java lines 33–111
class OriginTests {
@Test
void getParentWhenDefaultIsNull() {
Origin origin = new Origin() {
};
assertThat(origin.getParent()).isNull();
}
@Test
void fromWhenSourceIsNullReturnsNull() {
assertThat(Origin.from(null)).isNull();
}
@Test
void fromWhenSourceIsRegularObjectReturnsNull() {
Object source = new Object();
assertThat(Origin.from(source)).isNull();
}
@Test
void fromWhenSourceIsOriginReturnsSource() {
Origin origin = mock(Origin.class);
assertThat(Origin.from(origin)).isEqualTo(origin);
}
@Test
void fromWhenSourceIsOriginProviderReturnsProvidedOrigin() {
Origin origin = mock(Origin.class);
OriginProvider originProvider = mock(OriginProvider.class);
given(originProvider.getOrigin()).willReturn(origin);
assertThat(Origin.from(origin)).isEqualTo(origin);
}
@Test
void fromWhenSourceIsThrowableUsesCause() {
Origin origin = mock(Origin.class);
Exception exception = new RuntimeException(new TestException(origin, null));
assertThat(Origin.from(exception)).isEqualTo(origin);
}
@Test
void fromWhenSourceIsThrowableAndOriginProviderThatReturnsNullUsesCause() {
Origin origin = mock(Origin.class);
Exception exception = new TestException(null, new TestException(origin, null));
assertThat(Origin.from(exception)).isEqualTo(origin);
}
@Test
void parentsFromWhenSourceIsNullReturnsEmptyList() {
assertThat(Origin.parentsFrom(null)).isEmpty();
}
@Test
void parentsFromReturnsParents() {
Origin o1 = MockOrigin.of("1");
Origin o2 = MockOrigin.of("2", o1);
Origin o3 = MockOrigin.of("3", o2);
List<Origin> parents = Origin.parentsFrom(o3);
assertThat(parents).containsExactly(o2, o1);
}
static class TestException extends RuntimeException implements OriginProvider {
private final @Nullable Origin origin;
TestException(@Nullable Origin origin, @Nullable Throwable cause) {
super(cause);
this.origin = origin;
}
@Override
public @Nullable Origin getOrigin() {
return this.origin;
}
}
}
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free