AnyEvent-Impl-Prima

 view release on metacpan or  search on metacpan

t/02-prima-http.t  view on Meta::CPAN

#!perl -w
use Test::More tests => 4;
BEGIN {
if( $^O !~ /mswin|darwin/i ) {
    if( ! $ENV{DISPLAY} ) {
        SKIP: {
            skip "Need a display for the tests", 4;
        };
        exit;
    };
};
}
use AnyEvent::Impl::Prima;
use AnyEvent;
use AnyEvent::HTTP;
use Prima;
use Prima::Application;

use Test::HTTP::LocalServer;

my $server = Test::HTTP::LocalServer->spawn();

my $mw = Prima::MainWindow->new();

use Data::Dumper;
my $res;

my $timer;
my $web_request;
my $answer;

my $start_request; $start_request = AnyEvent->timer(
    after => 2,
    cb => sub {
        $timer++;

        $web_request = http_get $server->url,
            sub {
                $answer = $_[1];
                $mw->close
            },
        ;
    },
);

my $timeout;
my $t = AnyEvent->timer(
    cb => sub { $timeout++; $mw->close },
    after => 10,
);

Prima->run;

pass "We finished our main loop";
isnt $answer, undef, "We got an HTTP answer";
is $timer, 1, "Our timer got called";
is $timeout, undef, "No timeout";

done_testing;



( run in 0.638 second using v1.01-cache-2.11-cpan-5837b0d9d2c )