Java EE サーブレット仕様によると、そのメソッドServletContextListener
を介して展開/起動時にサーブレットコンテナーによって呼び出されるオブジェクトを実装しています。contextInitialized(ServletContext)
サーブレットコンテナの起動と展開をシミュレートする単体テストを作成しようとしていますServletContextListener
(アプリが正しく初期化されているかどうかを判断できるようにするため)。
これは可能ですか?コンテナ固有ですか?もしそうなら、私はOGSを使用しています。次のようなコードを探しています。
@Test
public void shouldBootstrapAppAtDeployTime() {
// Given
GlassFishContainer container = new GlassFishContainer(); // ha!
MyApp app = mock(MyApp.class); // MyApp implements ServletContextListener
// When - deploy app to container
// Causes app.contextInitialized(ServletContext) to be called
container.deploy(app);
// Then - verify the method was called with any ServletContext
mock.verify(app.contextInitialized(Matchers.any());
}
これは、デモ目的で実装が不十分な Mockito が散りばめられたずさんな疑似コードです (私の意図を理解するためだけに)。前もって感謝します!