summaryrefslogtreecommitdiff
path: root/cpan/Test-Simple/t/Legacy/subtest
diff options
context:
space:
mode:
authorSteve Hay <steve.m.hay@googlemail.com>2017-11-30 08:34:52 +0000
committerSteve Hay <steve.m.hay@googlemail.com>2017-11-30 08:34:52 +0000
commite26b661b084d2529f5f26d0d77af162cf4cd785b (patch)
tree65e4c74d9753bde80fb3d845ae26c717c28b7265 /cpan/Test-Simple/t/Legacy/subtest
parent848643a91802503d27202eb4d302cef07435275e (diff)
downloadperl-e26b661b084d2529f5f26d0d77af162cf4cd785b.tar.gz
Upgrade Test-Simple from version 1.302113 to 1.302120
Diffstat (limited to 'cpan/Test-Simple/t/Legacy/subtest')
-rw-r--r--cpan/Test-Simple/t/Legacy/subtest/callback.t53
1 files changed, 53 insertions, 0 deletions
diff --git a/cpan/Test-Simple/t/Legacy/subtest/callback.t b/cpan/Test-Simple/t/Legacy/subtest/callback.t
new file mode 100644
index 0000000000..097d1bf2c0
--- /dev/null
+++ b/cpan/Test-Simple/t/Legacy/subtest/callback.t
@@ -0,0 +1,53 @@
+#!/usr/bin/perl -w
+
+# What happens when a subtest dies?
+
+use lib 't/lib';
+
+use strict;
+use Test::More;
+use Test::Builder;
+use Test2::API;
+
+my $Test = Test::Builder->new;
+
+my $step = 0;
+my @callback_calls = ();
+Test2::API::test2_add_callback_pre_subtest(
+ sub {
+ $Test->is_num(
+ $step,
+ 0,
+ 'pre-subtest callbacks should be invoked before the subtest',
+ );
+ ++$step;
+ push @callback_calls, [@_];
+ },
+);
+
+$Test->subtest(
+ (my $subtest_name='some subtest'),
+ (my $subtest_code=sub {
+ $Test->is_num(
+ $step,
+ 1,
+ 'subtest should be run after the pre-subtest callbacks',
+ );
+ ++$step;
+ }),
+ (my @subtest_args = (1,2,3)),
+);
+
+is_deeply(
+ \@callback_calls,
+ [[$subtest_name,$subtest_code,@subtest_args]],
+ 'pre-subtest callbacks should be invoked with the expected arguments',
+);
+
+$Test->is_num(
+ $step,
+ 2,
+ 'the subtest should be run',
+);
+
+$Test->done_testing();