Test2::Event::V2 - Second generation event.
This is the event type that should be used instead of Test2::Event or its legacy
subclasses.
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;
}
use Test2::Event::V2;
my $e = Test2::Event::V2->new(
trace => {frame => [$PKG, $FILE, $LINE, $SUBNAME]},
info => [{tag => 'NOTE', details => "This is a note"}],
);
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.
- $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 ARE NOT 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.
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
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.
The source code repository for Test2 can be found at
http://github.com/Test-More/test-more/.
- Chad Granum <exodist@cpan.org>
- Chad Granum <exodist@cpan.org>
Copyright 2020 Chad Granum <exodist@cpan.org>.
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
See http://dev.perl.org/licenses/