Class WTestEnvironment


public class WTestEnvironment
extends WEnvironment
An environment for testing purposes.

This environment is useful for use in automated (integration/unit) tests: you may configure its properties and pass it to the constructor of an application.

This is useful for automated test-cases:

 void testX() {
 WTestEnvironment environment(new Configuration());
 MyApplication app(environment);


See Also:
WEnvironment, WApplication(WEnvironment env)
  • Constructor Details

    • WTestEnvironment

      public WTestEnvironment​(Configuration configuration, EntryPointType type)
      Default constructor.

      Constructs a test environment that resembles FireFox 3.0 with default settings.

      After construction, but before passing it to the constructor of a WApplication, you can change any of the environment properties using the setter methods.

    • WTestEnvironment

      public WTestEnvironment​(Configuration configuration)
  • Method Details

    • close

      public void close()
      Closes the test environment.

      Destroys the test environment. This will allow the environment and the application under test to be garbage collected.

    • setParameterMap

      public void setParameterMap​(java.util.Map<java.lang.String,​java.lang.String[]> parameters)
      Sets parameters to the application.

      The default value is an empty map.

      See Also:
    • setCookies

      public void setCookies​(java.util.Map<java.lang.String,​java.lang.String> cookies)
      Sets HTTP cookies.

      The default value is an empty map.

      See Also:
    • setHeaderValue

      public void setHeaderValue​(java.lang.String value)
      Sets a HTTP header value.

      The default value is no headers.

      See Also:
      WEnvironment.getHeaderValue(String name)
    • setSupportsCookies

      public void setSupportsCookies​(boolean enabled)
      Sets whether cookies are supported.

      The default value is true.

      See Also:
    • setAjax

      public void setAjax​(boolean enabled)
      Sets whether AJAX is supported.

      The default value is true.

      See Also:
    • setDpiScale

      public void setDpiScale​(double dpiScale)
      Sets the display's DPI scale.

      The default value is 1.

      See Also:
    • setLocale

      public void setLocale​(java.util.Locale locale)
      Sets the locale.

      The default value is the English locale ("en").

      See Also:
    • setHostName

      public void setHostName​(java.lang.String hostName)
      Sets the host name.

      The default value is "localhost".

      See Also:
    • setUrlScheme

      public void setUrlScheme​(java.lang.String scheme)
      Sets the URL scheme.

      The default value is "http".

      See Also:
    • setReferer

      public void setReferer​(java.lang.String referer)
      Sets the referer.

      The default value is "".

      See Also:
    • setAccept

      public void setAccept​(java.lang.String accept)
      Sets the accept header.

      The default value is "text/html,application/xhtml+xml,application/xml;q=0.9,*<span>/</span>*;q=0.8".

      See Also:
    • setServerSignature

      public void setServerSignature​(java.lang.String signature)
      Sets the server signature.

      The default value is "None (WTestEnvironment)".

      See Also:
    • setServerSoftware

      public void setServerSoftware​(java.lang.String software)
      Sets the server software.

      The default value is "None (WTestEnvironment)".

      See Also:
    • setServerAdmin

      public void setServerAdmin​(java.lang.String serverAdmin)
      Sets the server admin.

      The default value is "".

      See Also:
    • setClientAddress

      public void setClientAddress​(java.lang.String clientAddress)
      Sets the client address.

      The default value is "".

      See Also:
    • setInternalPath

      public void setInternalPath​(java.lang.String internalPath)
      Sets the initial internal path.

      The default value is "".

      See Also:
    • setContentType

      public void setContentType​(WEnvironment.ContentType contentType)
      Sets the content type (deprecated.

      Since contentType is now always HTML5, this setting is ignored.

    • endRequest

      public void endRequest()
      Simulates the end of a request by the main event loop.

      The environemnt (and application is) started from within the main event loop. To simulate the delivery of events posted to the application-under-test, by WServer::post(), you need to simulate the release of the session lock.

      See Also:
    • startRequest

      public void startRequest()
      Simulates the start of a new request by the main event loop.

      See Also:
    • setSessionIdInUrl

      public void setSessionIdInUrl​(boolean sessionIdInUrl)
      Simulates the presence of the session ID in the URL.

      A session ID in the URL should cause a trampoline to be used for references to external servers.

      The default value is false.

    • isTest

      public boolean isTest()
      Description copied from class: WEnvironment
      Returns whether this is a mocked test environment.
      isTest in class WEnvironment