Test::S...Reporter(3)

πŸ“¦
version 1.84 Β· 2 versions
, in fedora 43

πŸ’– Test::Smoke::Reporter β€” the vibe is "parse your test results, bestie" πŸ’–

okay so real talk: this is the Perl doc for Test::Smoke::Reporter, part of the User Contributed Perl Documentation. She's an OO queen and she's here to handle your test results. Let's get into it 🫢


✨ NAME ✨

Test::Smoke::Reporter β€” the OO interface for handling the testresults (mktest.out). yes, that's the whole assignment. iconic. πŸ’…


🌈 SYNOPSIS 🌈

use Test::Smoke;
use Test::Smoke::Reporter;

my $reporter = Test::Smoke::Reporter->new( %args );
$reporter->write_to_file;
$reporter->transport( $url );

look at her go. so clean. so slay. ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

She handles the parsing of the mktest.out file. that's it, that's the job. she parses, she reports, she moves on. main character energy fr fr.


πŸŽ€ METHODS πŸŽ€

πŸ’œ Test::Smoke::Reporter->new( %args )

[ Constructor | Public ]

Initialise a new object. birth of a legend, no cap. πŸ‘‘

πŸ’œ $reporter->verbose()

Accessor to the "v" attribute. just peeking at her v vibe check. πŸ”

πŸ’œ Test::Smoke::Reporter->config( $key[, $value] )

[ Accessor | Public ]

config() is an interface to the package lexical %CONFIG, which holds all the default values for the new() arguments.

With the special key all_defaults this returns a reference to a hash holding all the default values. the whole roster. πŸ’…

πŸ’œ $self->read_parse( [$result_file] )

read_parse() reads the smokeresults file and parses it. reading + parsing = the full combo, she ate.

πŸ’œ $self->_read( $nameorref )

_read() is a private method that handles the reading. don't dm her, she's private. πŸ™ˆ

Here's the tea on what $nameorref can be:

  • Reference to a SCALAR smokeresults β†’ they're in $$nameorref
  • Reference to an ARRAY smokeresults β†’ they're in @$nameorref
  • Reference to a GLOB smokeresults β†’ read from the filehandle
  • Other values β†’ taken as the filename for the smokeresults

πŸ’œ $self->_parse( )

Interpret the contents of the outfile and prepare them for processing, so report can be made. getting the data dolled up for its big moment. ✨

πŸ’œ $self->_post_process( )

_post_process() sets up the report for easy printing. She needs to sort the buildenvironments, statusletters and test failures. three things. sorted. organized. lowkey obsessed. 🧚

πŸ’œ __posixdate($time)

Returns "strftime("%F %T %z")". that's the format. periodt.

πŸ’œ __rm_common_args( $cfg, \%common )

Removes the the arguments stored as keys in %common from $cfg. (yes, the original says "the the", we are keeping it exactly, it's part of her charm πŸ’€)

πŸ’œ $reporter->get_logfile()

Return the contents of "$self->{lfile}" either by reading the file or returning the cached version. cache girlie behavior, we love to see it. πŸŽ€

πŸ’œ $reporter->get_outfile()

Return the contents of "$self->{outfile}" either by reading the file or returning the cached version. same energy, different attribute. πŸ’–

πŸ’œ $reporter->write_to_file( [$name] )

Write the "$self->report" to file. If name is omitted it will use "catfile( $self->{ddir}, $self->{rptfile} )". omitting is valid, she'll figure out the path herself. πŸ’…

πŸ’œ $reporter->smokedb_data()

Transport the report to the gateway. The transported data will also be stored locally in the file mktest.jsn. she travels and she keeps receipts. 🌍

πŸ’œ $reporter->report( )

Return a string with the full report. the whole thing. the masterpiece. πŸ”₯

πŸ’œ $reporter->_get_usernote()

Return $self->{user_note} if exists.

Check if "$self->{un_file}" exists, and read contents into "$self->{user_note}". note acquisition pipeline, fully automated. πŸ“

πŸ’œ $reporter->ccinfo( )

Return the string containing the C-compiler info. tell us about the compiler bestie. πŸ‘‘

πŸ’œ $reporter->registered_patches()

Return a section with the locally applied patches (from patchlevel.h). patch receipts, all of them. 🩹

πŸ’œ $reporter->harness3_options

Show indication of the options used for "HARNESS_OPTIONS". showing her harness settings off, as she should. 🌸

πŸ’œ $reporter->user_skipped_tests( )

Show indication for the fact that the user requested to skip some tests. sometimes we skip. it's fine. it's documented. πŸ™ˆ

πŸ’œ $reporter->ccmessages( )

Use a port of Jarkko's grepccerr script to report the compiler messages. shoutout Jarkko, the script is ported and it's doing the work. πŸ’œ

πŸ’œ $reporter->nonfatalmessages( )

Find failures worth reporting that won't cause tests to fail. the "we still need to talk about this" category. πŸ’€

πŸ’œ $reporter->preamble( )

Returns the header of the report. the intro. the opening act. the moment before the moment. ✨

πŸ’œ $reporter->smoke_matrix( )

smoke_matrix() returns a string with the result-letters and their configs. a whole little grid of vibes and letters. πŸ”€

πŸ’œ $reporter->summary( )

Return the PASS or FAIL(x) string. the moment of truth, bestie. 🌈

πŸ’œ $reporter->has_test_failures( )

Returns true if "@{ $reporter->{_failures}". (keeping the original syntax exactly, even though it's a lil quirky β€” we don't touch the code πŸ’…)

πŸ’œ $reporter->failures( )

report the failures (grouped by configurations). presenting the L's, nicely organized. πŸ“‹

πŸ’œ $reporter->has_todo_passed( )

Returns true if "@{ $reporter->{_todo_pasesd}". (yes, _todo_pasesd β€” that's the actual attribute name, keeping it character for character 🫢)

πŸ’œ $reporter->todo_passed( )

report the todo that passed (grouped by configurations). the to-dos that showed up and showed out. βœ…

πŸ’œ $reporter->has_mani_failures( )

Returns true if "@{ $reporter->{_mani}". checking on the manifest situation.

πŸ’œ $reporter->mani_fail( )

report the MANIFEST failures. manifest L's, reported. πŸ“„

πŸ’œ $reporter->bldenv_legend( )

Returns a string with the legend for build-environments. a little key so you know what's what. πŸ—οΈ

πŸ’œ $reporter->letter_legend( )

Returns a string with the legend for the letters in the matrix. letters decoded, mystery solved. πŸ” 

πŸ’œ $reporter->signature()

Returns the signature for the e-mail message (starting with dash dash space newline) and some version numbers. she signs off properly, always. πŸ’Œ


🌟 SEE ALSO 🌟

  • Test::Smoke::Smoker

go read that one too, bestie, it's the whole ecosystem. 🫢


(c) 2002-2012, All rights reserved.

  • Abe Timmerman <abeltje@cpan.org>
  • H.Merijn Brand <hmbrand@cpan.org>

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See:

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. fr fr, no warranty, bestie. 😭

and that's the whole page, my love πŸ’œ this was Test::Smoke::Reporter, from the User Contributed Perl Documentation, shipped with perl v5.42.0 and dated 2025-07-25. slay, go parse some results, you got this. πŸŽ€βœ¨

πŸ“¦ where this page comes from