Package com.avoka.tm.test
Class MockResponse
java.lang.Object
com.avoka.tm.test.MockResponse
- All Implemented Interfaces:
jakarta.servlet.http.HttpServletResponse,jakarta.servlet.ServletResponse
Mock implementation of HttpServletResponse.
Implements all of the methods from the standard HttpServletResponse class plus helper methods to aid viewing the generated response.
This class was adapted from Apache Wicket.
- Since:
- 17.10.0
-
Field Summary
Fields inherited from interface jakarta.servlet.http.HttpServletResponse
SC_ACCEPTED, SC_BAD_GATEWAY, SC_BAD_REQUEST, SC_CONFLICT, SC_CONTINUE, SC_CREATED, SC_EXPECTATION_FAILED, SC_FORBIDDEN, SC_FOUND, SC_GATEWAY_TIMEOUT, SC_GONE, SC_HTTP_VERSION_NOT_SUPPORTED, SC_INTERNAL_SERVER_ERROR, SC_LENGTH_REQUIRED, SC_METHOD_NOT_ALLOWED, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_MULTIPLE_CHOICES, SC_NO_CONTENT, SC_NON_AUTHORITATIVE_INFORMATION, SC_NOT_ACCEPTABLE, SC_NOT_FOUND, SC_NOT_IMPLEMENTED, SC_NOT_MODIFIED, SC_OK, SC_PARTIAL_CONTENT, SC_PAYMENT_REQUIRED, SC_PRECONDITION_FAILED, SC_PROXY_AUTHENTICATION_REQUIRED, SC_REQUEST_ENTITY_TOO_LARGE, SC_REQUEST_TIMEOUT, SC_REQUEST_URI_TOO_LONG, SC_REQUESTED_RANGE_NOT_SATISFIABLE, SC_RESET_CONTENT, SC_SEE_OTHER, SC_SERVICE_UNAVAILABLE, SC_SWITCHING_PROTOCOLS, SC_TEMPORARY_REDIRECT, SC_UNAUTHORIZED, SC_UNSUPPORTED_MEDIA_TYPE, SC_USE_PROXY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCookie(jakarta.servlet.http.Cookie cookie) Add a cookie to the response.voidaddDateHeader(String name, long l) Add a date header.voidAdd the given header value, including an additional entry if one already exists.voidaddIntHeader(String name, int i) Add an int header value.static voidappend2digits(StringBuffer buf, int i) Append two digits if specified int is less than 100.booleancontainsHeader(String name) Check if the response contains the given header name.encodeRedirectUrl(String url) Encode the redirectUrl.encodeRedirectURL(String url) Encode the redirectUrl.Encode thr URL.Encode thr URL.voidFlush the buffer.static StringformatDate(long value) Formats the specified long value as a date.static voidformatDate(StringBuffer buf, Calendar calendar, boolean cookie) Format HTTP date "EEE, dd MMM yyyy HH:mm:ss 'GMT'" or "EEE, dd-MMM-yy HH:mm:ss 'GMT'" for cookies.byte[]Get the binary content that was written to the servlet stream.intReturn the current buffer size.Get the character encoding of the response.intgetCode()Get the response code for this request.Return the response content type.Collection<jakarta.servlet.http.Cookie> Get all of the cookies that have been added to the response.Get the text document that was written as part of this response.Get the error message.Return the value of the given named header.Get the names of all of the headers.getHeaders(String name) Return the request headers.Get the encoded locale.jakarta.servlet.ServletOutputStreamGet the output stream for writing binary data from the servlet.Get the location that was redirected to.intGet the status code.Get the print writer for writing text output for this response.voidReset the response ready for reuse.booleanAlways returns false.booleanisError()Return whether the servlet returned an error code or not.booleanCheck whether the response was redirected or not.voidreset()Delegate to initialise method.voidClears the buffer.voidsendError(int code) Send an error code.voidSend an error code.voidsendRedirect(String url) Indicate sending of a redirectUrl to a particular named resource.voidsetBufferSize(int size) Method ignored.voidsetCharacterEncoding(String characterEncoding) Set the character encoding.voidsetContentLength(int length) Set the content length.voidsetContentLengthLong(long len) Set the content length long.voidsetContentType(String type) Set the content type.voidsetDateHeader(String name, long l) Set a date header.voidSet the given header value.voidsetIntHeader(String name, int i) Set an int header value.voidSet the locale in the response header.voidsetStatus(int status) Set the status for this response.voidDeprecated.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface jakarta.servlet.http.HttpServletResponse
getTrailerFields, setTrailerFields
-
Constructor Details
-
MockResponse
public MockResponse()Create the response object.
-
-
Method Details
-
addCookie
public void addCookie(jakarta.servlet.http.Cookie cookie) Add a cookie to the response.- Specified by:
addCookiein interfacejakarta.servlet.http.HttpServletResponse- Parameters:
cookie- The cookie to add
-
addDateHeader
Add a date header.- Specified by:
addDateHeaderin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
name- The header valuel- The long value
-
addHeader
Add the given header value, including an additional entry if one already exists.- Specified by:
addHeaderin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
name- The name for the headervalue- The value for the header
-
addIntHeader
Add an int header value.- Specified by:
addIntHeaderin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
name- The header namei- The value
-
containsHeader
Check if the response contains the given header name.- Specified by:
containsHeaderin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
name- The name to check- Returns:
- Whether header in response or not
-
encodeRedirectUrl
Encode the redirectUrl. Does no changes as this test implementation uses cookie based url tracking.- Parameters:
url- The url to encode- Returns:
- The encoded url
-
encodeRedirectURL
Encode the redirectUrl. Does no changes as this test implementation uses cookie based url tracking.- Specified by:
encodeRedirectURLin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
url- The url to encode- Returns:
- The encoded url
-
encodeUrl
Encode thr URL. Does no changes as this test implementation uses cookie based url tracking.- Parameters:
url- The url to encode- Returns:
- The encoded url
-
encodeURL
Encode thr URL. Does no changes as this test implementation uses cookie based url tracking.- Specified by:
encodeURLin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
url- The url to encode- Returns:
- The encoded url
-
flushBuffer
Flush the buffer.- Specified by:
flushBufferin interfacejakarta.servlet.ServletResponse- Throws:
IOException- if exception occurs during flush
-
getBinaryContent
public byte[] getBinaryContent()Get the binary content that was written to the servlet stream.- Returns:
- The binary content
-
getBufferSize
public int getBufferSize()Return the current buffer size.- Specified by:
getBufferSizein interfacejakarta.servlet.ServletResponse- Returns:
- The buffer size
-
getCharacterEncoding
Get the character encoding of the response.- Specified by:
getCharacterEncodingin interfacejakarta.servlet.ServletResponse- Returns:
- The character encoding
-
getCode
public int getCode()Get the response code for this request.- Returns:
- The response code
-
getCookies
Get all of the cookies that have been added to the response.- Returns:
- The collection of cookies
-
getDocument
Get the text document that was written as part of this response.- Returns:
- The document
-
getErrorMessage
Get the error message.- Returns:
- The error message, or null if no message
-
getHeader
Return the value of the given named header.- Specified by:
getHeaderin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
name- The header name- Returns:
- The value, or null
-
getHeaderNames
Get the names of all of the headers.- Specified by:
getHeaderNamesin interfacejakarta.servlet.http.HttpServletResponse- Returns:
- The header names
-
getLocale
Get the encoded locale.- Specified by:
getLocalein interfacejakarta.servlet.ServletResponse- Returns:
- The locale
-
getOutputStream
public jakarta.servlet.ServletOutputStream getOutputStream()Get the output stream for writing binary data from the servlet.- Specified by:
getOutputStreamin interfacejakarta.servlet.ServletResponse- Returns:
- The binary output stream.
-
getRedirectUrl
Get the location that was redirected to.- Returns:
- The redirect url, or null if not a redirect
-
getStatus
public int getStatus()Get the status code.- Specified by:
getStatusin interfacejakarta.servlet.http.HttpServletResponse- Returns:
- The status code
-
getWriter
Get the print writer for writing text output for this response.- Specified by:
getWriterin interfacejakarta.servlet.ServletResponse- Returns:
- The writer
- Throws:
IOException- - if an input or output exception occurred
-
initialize
public void initialize()Reset the response ready for reuse. -
reset
public void reset()Delegate to initialise method.- Specified by:
resetin interfacejakarta.servlet.ServletResponse
-
isCommitted
public boolean isCommitted()Always returns false.- Specified by:
isCommittedin interfacejakarta.servlet.ServletResponse- Returns:
- Always false
-
isError
public boolean isError()Return whether the servlet returned an error code or not.- Returns:
- Whether an error occurred or not
-
isRedirect
public boolean isRedirect()Check whether the response was redirected or not.- Returns:
- Whether the state was redirected or not
-
resetBuffer
public void resetBuffer()Clears the buffer.- Specified by:
resetBufferin interfacejakarta.servlet.ServletResponse
-
sendError
Send an error code. This implementation just sets the internal error state information.- Specified by:
sendErrorin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
code- The code- Throws:
IOException- Not used
-
sendError
Send an error code. This implementation just sets the internal error state information.- Specified by:
sendErrorin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
code- The error codemsg- The error message- Throws:
IOException- Not used
-
sendRedirect
Indicate sending of a redirectUrl to a particular named resource.
This implementation just keeps hold of the redirectUrl info and makes it available for querying.
- Specified by:
sendRedirectin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
url- The url to set redirectUrl to- Throws:
IOException- Not used
-
setBufferSize
public void setBufferSize(int size) Method ignored.- Specified by:
setBufferSizein interfacejakarta.servlet.ServletResponse- Parameters:
size- The size
-
setCharacterEncoding
Set the character encoding.- Specified by:
setCharacterEncodingin interfacejakarta.servlet.ServletResponse- Parameters:
characterEncoding- The character encoding
-
setContentLength
public void setContentLength(int length) Set the content length.- Specified by:
setContentLengthin interfacejakarta.servlet.ServletResponse- Parameters:
length- The length
-
setContentType
Set the content type.- Specified by:
setContentTypein interfacejakarta.servlet.ServletResponse- Parameters:
type- The content type
-
getContentType
Return the response content type.- Specified by:
getContentTypein interfacejakarta.servlet.ServletResponse- Returns:
- the response content type
-
setDateHeader
Set a date header.- Specified by:
setDateHeaderin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
name- The header namel- The long value
-
formatDate
Formats the specified long value as a date.- Parameters:
value- the specified long value to format- Returns:
- the formatted date
-
formatDate
Format HTTP date "EEE, dd MMM yyyy HH:mm:ss 'GMT'" or "EEE, dd-MMM-yy HH:mm:ss 'GMT'" for cookies.- Parameters:
buf- the buffer to render to formatted date tocalendar- the date to formatcookie- should date be formatted for usage in a cookie
-
append2digits
Append two digits if specified int is less than 100.- Parameters:
buf- the buffer to add 2 digits toi- the digits to add
-
setHeader
Set the given header value.- Specified by:
setHeaderin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
name- The name for the headervalue- The value for the header
-
setIntHeader
Set an int header value.- Specified by:
setIntHeaderin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
name- The header namei- The value
-
setLocale
Set the locale in the response header.- Specified by:
setLocalein interfacejakarta.servlet.ServletResponse- Parameters:
locale- The locale
-
setStatus
public void setStatus(int status) Set the status for this response.- Specified by:
setStatusin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
status- The status
-
setStatus
Deprecated.Set the status for this response.- Parameters:
status- The statusmsg- The message
-
setContentLengthLong
public void setContentLengthLong(long len) Set the content length long.- Specified by:
setContentLengthLongin interfacejakarta.servlet.ServletResponse- Parameters:
len- the content length
-
getHeaders
Return the request headers.- Specified by:
getHeadersin interfacejakarta.servlet.http.HttpServletResponse- Parameters:
name- the header name- Returns:
- headers
-