Skip to content

Commit 9d2d9ae

Browse files
committed
Reinstate stopOrder test
See gh-35964
1 parent c74af40 commit 9d2d9ae

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

spring-context/src/test/java/org/springframework/context/support/ApplicationContextLifecycleTests.java

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,29 @@ void startOrder() {
9898
context.close();
9999
}
100100

101+
@Test
102+
void stopOrder() {
103+
AbstractApplicationContext context = new ClassPathXmlApplicationContext("lifecycleTests.xml", getClass());
104+
105+
context.start();
106+
context.stop();
107+
LifecycleTestBean bean1 = (LifecycleTestBean) context.getBean("bean1");
108+
LifecycleTestBean bean2 = (LifecycleTestBean) context.getBean("bean2");
109+
LifecycleTestBean bean3 = (LifecycleTestBean) context.getBean("bean3");
110+
LifecycleTestBean bean4 = (LifecycleTestBean) context.getBean("bean4");
111+
String notStoppedError = "bean was not stopped";
112+
assertThat(bean1.getStopOrder()).as(notStoppedError).isGreaterThan(0);
113+
assertThat(bean2.getStopOrder()).as(notStoppedError).isGreaterThan(0);
114+
assertThat(bean3.getStopOrder()).as(notStoppedError).isGreaterThan(0);
115+
assertThat(bean4.getStopOrder()).as(notStoppedError).isGreaterThan(0);
116+
String orderError = "dependent bean must stop before the bean it depends on";
117+
assertThat(bean2.getStopOrder()).as(orderError).isLessThan(bean1.getStopOrder());
118+
assertThat(bean3.getStopOrder()).as(orderError).isLessThan(bean2.getStopOrder());
119+
assertThat(bean4.getStopOrder()).as(orderError).isLessThan(bean2.getStopOrder());
120+
121+
context.close();
122+
}
123+
101124
@Test
102125
void autoStartup() {
103126
GenericApplicationContext context = new GenericApplicationContext();

0 commit comments

Comments
 (0)