logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Test2::Event::V2 - Second generation event.

Authors

       Chad Granum <exodist@cpan.org>

Description

       This is the event type that should be used instead of Test2::Event or its legacy subclasses.

Maintainers

       Chad Granum <exodist@cpan.org>

Methods

       This class inherits from Test2::Event.

       $fd = $e->facet_data()
           This will return a hashref of facet data. Each facet hash will be a shallow copy of the original.

       $about = $e->about()
           This will return the 'about' facet hashref.

           NOTE: This will return the internal hashref, not a copy.

       $trace = $e->trace()
           This  will return the 'trace' facet, normally blessed (but this is not enforced when the trace is set
           using set_trace().

           NOTE: This will return the internal trace, not a copy.

   MUTATION
       $e->add_amnesty({...})
           Inherited from Test2::Event. This can be used to add 'amnesty' facets to an existing event. Each  new
           item is added to the END of the list.

           NOTE: Items ARE blessed when added.

       $e->add_hub({...})
           Inherited from Test2::Event. This is used by hubs to stamp events as they pass through. New items are
           added to the START of the list.

           NOTE: Items ARENOT blessed when added.

       $e->set_uuid($UUID)
           Inherited from Test2::Event, overridden to also vivify/mutate the 'about' facet.

       $e->set_trace($trace)
           Inherited from Test2::Event which allows you to change the trace.

           Note:  This  method  does  not bless/clone the trace for you. Many things will expect the trace to be
           blessed, so you should probably do that.

   LEGACYSUPPORTMETHODS
       These are all imported from Test2::Util::Facets2Legacy, see that module or Test2::Event for documentation
       on what they do.

       causes_fail
       diagnostics
       global
       increments_count
       no_display
       sets_plan
       subtest_id
       summary
       terminate

Name

       Test2::Event::V2 - Second generation event.

Source

       The source code repository for Test2 can be found at <https://github.com/Test-More/test-more/>.

Synopsis

USINGACONTEXT
           use Test2::API qw/context/;

           sub my_tool {
               my $ctx = context();

               my $event = $ctx->send_ev2(info => [{tag => 'NOTE', details => "This is a note"}]);

               $ctx->release;

               return $event;
           }

   USINGTHECONSTRUCTOR
           use Test2::Event::V2;

           my $e = Test2::Event::V2->new(
               trace => {frame => [$PKG, $FILE, $LINE, $SUBNAME]},
               info  => [{tag => 'NOTE', details => "This is a note"}],
           );

Third Party Meta-Data

       This object consumes Test2::Util::ExternalMeta which provides a consistent way for you  to  attach  meta-
       data to instances of this class. This is useful for tools, plugins, and other extensions.

See Also