File tree Expand file tree Collapse file tree 1 file changed +23
-0
lines changed
spring-context/src/test/java/org/springframework/context/support Expand file tree Collapse file tree 1 file changed +23
-0
lines changed Original file line number Diff line number Diff 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 ();
You can’t perform that action at this time.
0 commit comments