NAME
Jifty::Plugin::TestServerWarnings - Stores server warnings away for later fetching
SYNOPSIS
# In your jifty config.yml under the framework section:
Plugins:
- TestServerWarnings:
clear_screen: 1
DESCRIPTION
This plugin add a new appender Jifty::Plugin::TestServerWarnings::Appender on the first request it sees, which stores away all messages it receives. It also removes the default "Screen" appender unless clear_screen in config.yml is set to be false or env TEST_VERBOSE is true.
The warnings can be retrieved by a client-side process by calling "decoded_warnings" with a base URI to the server.
This plugin is automatically added for all jifty tests.
METHODS
init
set clear_screen to 1 if the clear_screen in config.yml is set to be true, if it's not set at all, set it to 1 if TEST_VERBOSE is set to be true.
new_request
On the first call to new_request, the plugin adjusts the appenders. This causes it to only have effect if it is run in a forked server process, not in a test process. If TEST_VERBOSE
is set, it does not remove the Screen appender.
add_warnings WARN, WARN, ..
Takes the given warnings, and stores them away for later reporting.
stashed_warnings
Returns the stored warnings, as a list. This does not clear the list, unlike "encoded_warnings" or "decoded_warnings".
encoded_warnings
Returns the stored warnings, encoded using Storable. This also clears the list of stashed warnings.
decoded_warnings URI
Given the URI to a jifty server with this plugin enabled, retrieves and decodes the stored warnings, returning them. This will also clear the server's stored list of warnings.