Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

test::log::dispatch(3pm) [debian man page]

Test::Log::Dispatch(3pm)				User Contributed Perl Documentation				  Test::Log::Dispatch(3pm)

NAME
Test::Log::Dispatch -- Test what you are logging SYNOPSIS
use Test::More; use Test::Log::Dispatch; my $log = Test::Log::Dispatch->new(); # ... # call something that logs to $log # ... # now test to make sure you logged the right things $log->contains_ok(qr/good log message/, "good message was logged"); $log->does_not_contain_ok(qr/unexpected log message/, "unexpected message was not logged"); $log->empty_ok("no more logs"); # or my $msgs = $log->msgs; cmp_deeply($msgs, ['msg1', 'msg2', 'msg3']); DESCRIPTION
"Test::Log::Dispatch" is a "Log::Dispatch" object that keeps track of everything logged to it in memory, and provides convenient tests against what has been logged. CONSTRUCTOR
The constructor returns a "Test::Log::Dispatch" object, which inherits from "Log::Dispatch" and contains a single "Log::Dispatch::Array" output at 'debug' level. The constructor requires no parameters. Any parameters will be forwarded to the "Log::Dispatch::Array" constructor. For example, you can pass a min_level to override the default 'debug'. METHODS
The test_name is optional in the *_ok methods; a reasonable default will be provided. contains_ok ($regex[, $test_name]) Tests that a message in the log buffer matches $regex. On success, the message is removed from the log buffer (but any other matches are left untouched). does_not_contain_ok ($regex[, $test_name]) Tests that no message in the log buffer matches $regex. empty_ok ([$test_name]) Tests that there is no log buffer left. On failure, the log buffer is cleared to limit further cascading failures. contains_only_ok ($regex[, $test_name]) Tests that there is a single message in the log buffer and it matches $regex. On success, the message is removed. clear () Clears the log buffer. msgs () Returns the current contents of the log buffer as an array reference, where each element is a hash containing a message and level key. TO DO
o Allow testing of log levels. SEE ALSO
Log::Dispatch, Test::Log4perl AUTHOR
Jonathan Swartz COPYRIGHT &; LICENSE Copyright (C) 2009 Jonathan Swartz, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.10.1 2009-11-04 Test::Log::Dispatch(3pm)

Check Out this Related Man Page

Log::Dispatch::Output(3pm)				User Contributed Perl Documentation				Log::Dispatch::Output(3pm)

NAME
Log::Dispatch::Output - Base class for all Log::Dispatch::* objects VERSION
version 2.32 SYNOPSIS
package Log::Dispatch::MySubclass; use Log::Dispatch::Output; use base qw( Log::Dispatch::Output ); sub new { my $proto = shift; my $class = ref $proto || $proto; my %p = @_; my $self = bless {}, $class; $self->_basic_init(%p); # Do more if you like return $self; } sub log_message { my $self = shift; my %p = @_; # Do something with message in $p{message} } 1; DESCRIPTION
This module is the base class from which all Log::Dispatch::* objects should be derived. CONSTRUCTOR
The constructor, "new", must be overridden in a subclass. See Output Classes for a description of the common parameters accepted by this constructor. METHODS
o _basic_init(%p) This should be called from a subclass's constructor. Make sure to pass the arguments in @_ to it. It sets the object's name and minimum level. It also sets up two other attributes which are used by other Log::Dispatch::Output methods, level_names and level_numbers. o name Returns the object's name. o min_level Returns the object's minimum log level. o max_level Returns the object's maximum log level. o accepted_levels Returns a list of the object's accepted levels (by name) from minimum to maximum. o log( level => $, message => $ ) Sends a message if the level is greater than or equal to the object's minimum level. This method applies any message formatting callbacks that the object may have. o _should_log ($) This method is called from the "log()" method with the log level of the message to be logged as an argument. It returns a boolean value indicating whether or not the message should be logged by this particular object. The "log()" method will not process the message if the return value is false. o _level_as_number ($) This method will take a log level as a string (or a number) and return the number of that log level. If not given an argument, it returns the calling object's log level instead. If it cannot determine the level then it will croak. o add_callback( $code ) Adds a callback (like those given during construction). It is added to the end of the list of callbacks. Subclassing This class should be used as the base class for all logging objects you create that you would like to work under the Log::Dispatch architecture. Subclassing is fairly trivial. For most subclasses, if you simply copy the code in the SYNOPSIS and then put some functionality into the "log_message" method then you should be all set. Please make sure to use the "_basic_init" method as directed. The actual logging implementation should be done in a "log_message" method that you write. Do not override "log"!. AUTHOR
Dave Rolsky <autarch@urth.org> COPYRIGHT AND LICENSE
This software is Copyright (c) 2011 by Dave Rolsky. This is free software, licensed under: The Artistic License 2.0 (GPL Compatible) perl v5.14.2 2012-05-25 Log::Dispatch::Output(3pm)
Man Page