This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
d6d380780ed2843c4cba142ede9860701b5dc14a
[perl5.git] / cpan / Test-Simple / lib / Test / Stream / Event / Child.pm
1 package Test::Stream::Event::Child;
2 use strict;
3 use warnings;
4
5 use Test::Stream::Carp qw/confess/;
6 use Test::Stream::Event(
7     accessors => [qw/action name no_note/],
8 );
9
10 sub init {
11     confess "did not get an action" unless $_[0]->[ACTION];
12     confess "action must be either 'push' or 'pop', not '$_[0]->[ACTION]'"
13         unless $_[0]->[ACTION] =~ m/^(push|pop)$/;
14
15     $_[0]->[NAME] ||= "";
16 }
17
18 1;
19
20 __END__
21
22 =head1 NAME
23
24 Test::Stream::Event::Child - Child event type
25
26 =head1 DESCRIPTION
27
28 B<YOU PROBABLY DO NOT WANT TO USE THIS YOURSELF>
29
30 Child events are used under the hood to start and stop subtests.
31 L<Test::Stream::Event::Subtest> events are generated by child events.
32
33 =head1 SYNOPSYS
34
35     use Test::Stream::Context qw/context/;
36     use Test::Stream::Event::Bail;
37
38     my $ctx = context();
39     $ctx->child( 'push', $NAME );
40
41     ... # Generate events
42
43     # Generates a subtest event
44     $ctx->child( 'pop', $NAME );
45
46 =encoding utf8
47
48 =head1 SOURCE
49
50 The source code repository for Test::More can be found at
51 F<http://github.com/Test-More/test-more/>.
52
53 =head1 MAINTAINER
54
55 =over 4
56
57 =item Chad Granum E<lt>exodist@cpan.orgE<gt>
58
59 =back
60
61 =head1 AUTHORS
62
63 The following people have all contributed to the Test-More dist (sorted using
64 VIM's sort function).
65
66 =over 4
67
68 =item Chad Granum E<lt>exodist@cpan.orgE<gt>
69
70 =item Fergal Daly E<lt>fergal@esatclear.ie>E<gt>
71
72 =item Mark Fowler E<lt>mark@twoshortplanks.comE<gt>
73
74 =item Michael G Schwern E<lt>schwern@pobox.comE<gt>
75
76 =item 唐鳳
77
78 =back
79
80 =head1 COPYRIGHT
81
82 There has been a lot of code migration between modules,
83 here are all the original copyrights together:
84
85 =over 4
86
87 =item Test::Stream
88
89 =item Test::Stream::Tester
90
91 Copyright 2014 Chad Granum E<lt>exodist7@gmail.comE<gt>.
92
93 This program is free software; you can redistribute it and/or
94 modify it under the same terms as Perl itself.
95
96 See F<http://www.perl.com/perl/misc/Artistic.html>
97
98 =item Test::Simple
99
100 =item Test::More
101
102 =item Test::Builder
103
104 Originally authored by Michael G Schwern E<lt>schwern@pobox.comE<gt> with much
105 inspiration from Joshua Pritikin's Test module and lots of help from Barrie
106 Slaymaker, Tony Bowden, blackstar.co.uk, chromatic, Fergal Daly and the perl-qa
107 gang.
108
109 Idea by Tony Bowden and Paul Johnson, code by Michael G Schwern
110 E<lt>schwern@pobox.comE<gt>, wardrobe by Calvin Klein.
111
112 Copyright 2001-2008 by Michael G Schwern E<lt>schwern@pobox.comE<gt>.
113
114 This program is free software; you can redistribute it and/or
115 modify it under the same terms as Perl itself.
116
117 See F<http://www.perl.com/perl/misc/Artistic.html>
118
119 =item Test::use::ok
120
121 To the extent possible under law, 唐鳳 has waived all copyright and related
122 or neighboring rights to L<Test-use-ok>.
123
124 This work is published from Taiwan.
125
126 L<http://creativecommons.org/publicdomain/zero/1.0>
127
128 =item Test::Tester
129
130 This module is copyright 2005 Fergal Daly <fergal@esatclear.ie>, some parts
131 are based on other people's work.
132
133 Under the same license as Perl itself
134
135 See http://www.perl.com/perl/misc/Artistic.html
136
137 =item Test::Builder::Tester
138
139 Copyright Mark Fowler E<lt>mark@twoshortplanks.comE<gt> 2002, 2004.
140
141 This program is free software; you can redistribute it
142 and/or modify it under the same terms as Perl itself.
143
144 =back