App-phoebe
view release on metacpan or search on metacpan
lib/App/Phoebe.pm view on Meta::CPAN
result($stream, "40", "An error occured, unfortunately");
}
rmdir($lock);
$stream->close_gracefully();
} elsif ($count > 25) {
$log->error("Unable to unlock $lock");
result($stream, "40", "The wiki is locked; try again in a few seconds");
$stream->close_gracefully();
} else {
$log->debug("Waiting $count...");
Mojo::IOLoop->timer(0.2 => sub {
with_lock($stream, $host, $space, $code, $count + 1)});
# don't close the stream
}
}
sub write_page {
my $stream = shift;
my $host = shift;
my $space = shift;
my $id = shift;
t/00_tls_check.t view on Meta::CPAN
END {
# kill server
if ($pid) {
kill 'KILL', $pid or warn "Could not kill server $pid";
}
}
if (!defined $pid) {
die "Cannot fork: $!";
} elsif ($pid == 0) {
Mojo::IOLoop->timer(10 => sub { Mojo::IOLoop->stop() });
start_server();
} else {
sleep 1;
use Test::More;
query1("Hello1");
query2("Hello2");
Mojo::IOLoop->stop();
done_testing();
}
Phone screens shining bright
EOT
my $page = query_gemini("$titan/raw/Haiku;size=74;mime=text/plain;token=hello", $haiku);
like($page, qr/^30 $base\/page\/Haiku\r$/, "Titan Haiku");
ok(read_text("$dir/page/Haiku.gmi") eq $haiku, "Haiku saved");
mkdir("$dir/locked");
# 1s timer
Mojo::IOLoop->timer(1 => sub {
pass("Waiting 1s");
ok(read_text("$dir/page/Haiku.gmi") eq $haiku, "Haiku unchanged");
rmdir("$dir/locked")});
my $haiku2 = <<EOT;
Pink peaks and blue rocks
The sun is gone and I'm cold
The Blackbird still sings
EOT
( run in 1.250 second using v1.01-cache-2.11-cpan-49f99fa48dc )