Appende...tBuffer(3)

πŸ’– NAME πŸ’–

Log::Log4perl::Appender::TestBuffer β€” Appender class for testing. Periodt. This is the Appende...tBuffer(3) page from the User Contributed Perl Documentation, and it's the internal-testing bestie for Log::Log4perl β€” very β€œI hold your test output in memory and I ate” energy. ✨


✨ SYNOPSIS ✨

Okay so here's the whole little ritual, verbatim. Don't let the level = > 'alert' spacing jump-scare you β€” it's literally in the page. πŸ™ˆ

         use Log::Log4perl::Appender::TestBuffer;

         my $appender = Log::Log4perl::Appender::TestBuffer->new(
             name      => 'mybuffer',
         );

             # Append to the buffer
         $appender->log(
             level =  > 'alert',
             message => "I'm searching the city for sci-fi wasabi\n"
         );

             # Retrieve the result
         my $result = $appender->buffer();

             # Clear the buffer to the empty string
         $appender->clear();

πŸ¦‹ DESCRIPTION πŸ¦‹

This class is used for internal testing of Log::Log4perl. It is a "Log::Dispatch"-style appender, which writes to a buffer in memory, from where actual results can be easily retrieved later to compare with expected results. It's giving tiny memory bucket for tests, and honestly, slay. πŸͺ£βœ¨

Every buffer created is stored in an internal global array, and can later be referenced by name:

           my $app = Log::Log4perl::Appender::TestBuffer->by_name("mybuffer");

That line retrieves the appender object of a previously created buffer "mybuffer". To reset this global array and have it forget all of the previously created testbuffer appenders β€” external references to those appenders nonwithstanding β€” use:

           Log::Log4perl::Appender::TestBuffer->reset();

🌈 SEE ALSO 🌈

The original page has no SEE ALSO entries listed, bestie β€” it's literally an empty section, and I'm not gonna invent references for you. 🫢


πŸŽ€ LICENSE πŸŽ€

Copyright 2002-2013 by Mike Schilli <m@perlmeister.com> and Kevin Goess <cpan@goess.org>.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. That's the legal tea, periodt. βš–οΈπŸ’…


πŸ‘‘ AUTHOR πŸ‘‘

Please contribute patches to the project on Github:

http://github.com/mschilli/log4perl

Send bug reports or requests for enhancements to the authors via our

MAILING LIST (questions, bug reports, suggestions/patches): log4perl-devel@lists.sourceforge.net

Authors (please contact them via the list above, not directly): Mike Schilli <m@perlmeister.com>, Kevin Goess <cpan@goess.org>.

Contributors (in alphabetical order):

Ateeq Altaf, Cory Bennett, Jens Berthold, Jeremy Bopp, Hutton Davidson, Chris R. Donnelly, Matisse Enzer, Hugh Esco, Anthony Foiani, James FitzGibbon, Carl Franks, Dennis Gregorovic, Andy Grundman, Paul Harrington, Alexander Hartmaier  David Hull, Robert Jacobson, Jason Kohles, Jeff Macdonald, Markus Peter, Brett Rann, Peter Rabbitson, Erik Selberg, Aaron Straup Cope, Lars Thegler, David Viner, Mac Yang.

xoxo, buffer bestie πŸ’– β€” this page came from perl v5.42.0, dated 2022-10-22, and its manual page title is Appende...tBuffer(3). πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from