Skip to content

Commit ac8eb21

Browse files
authored
Merge pull request #1969 from misch2/michals/convert-tests-to-use-subtests-ioloop-ipv6
Convert t/mojo/ioloop_ipv6.t to use subtests
2 parents 5443420 + bd2f7fa commit ac8eb21

File tree

1 file changed

+26
-25
lines changed

1 file changed

+26
-25
lines changed

t/mojo/ioloop_ipv6.t

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -10,30 +10,31 @@ plan skip_all => 'set TEST_IPV6 to enable this test (developer only!)' unless $E
1010

1111
use Mojo::IOLoop;
1212

13-
# IPv6 roundtrip
14-
my ($server, $client);
15-
my $promise = Mojo::Promise->new;
16-
my $id = Mojo::IOLoop->server(
17-
{address => '[::1]'} => sub {
18-
my ($loop, $stream) = @_;
19-
$stream->write('test' => sub { shift->write('321') });
20-
$stream->on(close => sub { $promise->resolve });
21-
$stream->on(read => sub { $server .= pop });
22-
}
23-
);
24-
my $port = Mojo::IOLoop->acceptor($id)->port;
25-
my $promise2 = Mojo::Promise->new;
26-
Mojo::IOLoop->client(
27-
{address => '[::1]', port => $port} => sub {
28-
my ($loop, $err, $stream) = @_;
29-
$stream->write('tset' => sub { shift->write('123') });
30-
$stream->on(close => sub { $promise2->resolve });
31-
$stream->on(read => sub { $client .= pop });
32-
$stream->timeout(0.5);
33-
}
34-
);
35-
Mojo::Promise->all($promise, $promise2)->wait;
36-
is $server, 'tset123', 'right content';
37-
is $client, 'test321', 'right content';
13+
subtest 'IPv6 roundtrip' => sub {
14+
my ($server, $client);
15+
my $promise = Mojo::Promise->new;
16+
my $id = Mojo::IOLoop->server(
17+
{address => '[::1]'} => sub {
18+
my ($loop, $stream) = @_;
19+
$stream->write('test' => sub { shift->write('321') });
20+
$stream->on(close => sub { $promise->resolve });
21+
$stream->on(read => sub { $server .= pop });
22+
}
23+
);
24+
my $port = Mojo::IOLoop->acceptor($id)->port;
25+
my $promise2 = Mojo::Promise->new;
26+
Mojo::IOLoop->client(
27+
{address => '[::1]', port => $port} => sub {
28+
my ($loop, $err, $stream) = @_;
29+
$stream->write('tset' => sub { shift->write('123') });
30+
$stream->on(close => sub { $promise2->resolve });
31+
$stream->on(read => sub { $client .= pop });
32+
$stream->timeout(0.5);
33+
}
34+
);
35+
Mojo::Promise->all($promise, $promise2)->wait;
36+
is $server, 'tset123', 'right content';
37+
is $client, 'test321', 'right content';
38+
};
3839

3940
done_testing();

0 commit comments

Comments
 (0)