Class NoAppStartHttpServerCustomContextTypesTestingBase<R extends RequestContext<?>,W extends WebsocketContext<?>>

java.lang.Object
org.spincast.testing.core.SpincastTestBase
org.spincast.testing.core.AppBasedTestingBase<R,W>
org.spincast.testing.defaults.NoAppStartHttpServerCustomContextTypesTestingBase<R,W>
All Implemented Interfaces:
BeforeAfterClassMethodsProvider, CanBeDisabled, RepeatedClassAfterMethodProvider, TestFailureListener
Direct Known Subclasses:
NoAppStartHttpServerTestingBase

public abstract class NoAppStartHttpServerCustomContextTypesTestingBase<R extends RequestContext<?>,W extends WebsocketContext<?>> extends AppBasedTestingBase<R,W>
Base class for testing without an App but when an HTTP server is required.

Note that, by default, all routes are cleared before each test! Even routes added by plugins... To change this behavior, override the clearRoutes() method.

  • Constructor Details

    • NoAppStartHttpServerCustomContextTypesTestingBase

      public NoAppStartHttpServerCustomContextTypesTestingBase()
  • Method Details

    • getAppTestingConfigs

      protected final AppTestingConfigs getAppTestingConfigs()
      Description copied from class: AppBasedTestingBase
      We force test classes to provide information about the required testing configurations.

      The bindings for those components will be automatically created.

      Specified by:
      getAppTestingConfigs in class AppBasedTestingBase<R extends RequestContext<?>,W extends WebsocketContext<?>>
      Returns:
      the testing configs informations or null to disable this process (you will then have to add the required config bindings by yourself).
    • getTestingConfigImplementationClass2

      protected Class<? extends SpincastConfig> getTestingConfigImplementationClass2()
    • callAppMainMethod

      protected final void callAppMainMethod()
      Description copied from class: AppBasedTestingBase
      Starts the application.

      In this method, you should call your application main() method.

      There is no need to start the Server here, since the target application is supposed to do it by itself, in general in an "@Inject init()" method!

      Specified by:
      callAppMainMethod in class AppBasedTestingBase<R extends RequestContext<?>,W extends WebsocketContext<?>>
    • createBootstrapper

      protected SpincastBootstrapper createBootstrapper()
    • getMainArgs

      protected String[] getMainArgs()
    • beforeClass

      public void beforeClass()
      Don't forget to first call super.beforeClass()
      Specified by:
      beforeClass in interface BeforeAfterClassMethodsProvider
      Overrides:
      beforeClass in class AppBasedTestingBase<R extends RequestContext<?>,W extends WebsocketContext<?>>
    • startServer

      protected void startServer()
    • beforeStartServer

      protected void beforeStartServer()
      Allows some initialization to be run once the Guice context is created, but before the Server is started.
    • beforeTest

      public void beforeTest()
      Ran before every test.
      Overrides:
      beforeTest in class SpincastTestBase
    • clearRoutes

      protected void clearRoutes()
    • removeSpincastRoutesToo

      protected boolean removeSpincastRoutesToo()
      Should the default Spincast Routes be removed too? Or only the custom ones?
    • getRequestContextImplementationClass

      protected abstract Class<? extends RequestContext<?>> getRequestContextImplementationClass()
    • getWebsocketContextImplementationClass

      protected abstract Class<? extends WebsocketContext<?>> getWebsocketContextImplementationClass()