bumped version.
[AnyEvent-HTTPD.git] / t / 01_basic_request.t
blobf36cff9954c61aef8e4a0fdb8e17e2956573f05c
1 #!perl
2 use strict;
3 use Test::More tests => 3;
4 use Coro;
5 use AnyEvent::HTTPD;
7 my $h = AnyEvent::HTTPD->new (port => 19090);
9 my $req_url;
10 my $req_url2;
12 $h->reg_cb (
13    '' => sub {
14       my ($httpd, $req) = @_;
15       $req_url = $req->url->path;
16    },
17    '/test' => sub {
18       my ($httpd, $req) = @_;
19       $req_url2 = $req->url->path;
20       $req->respond ({ content => ['text/plain', "Test response"] });
21    },
24 my $c;
25 my $t = AnyEvent->timer (after => 0.1, cb => sub {
26    my $p = fork;
27    if (defined $p) {
28       if ($p) {
29          $c = AnyEvent->child (pid => $p, cb => sub {
30             $h->stop;
31          });
32       } else {
33          my $out = `wget http://localhost:19090/test -O/tmp/anyevent_httpd_test 2>&1 >/dev/null`;
34          exit;
35       }
36    } else {
37       die "fork error: $!";
38    }
39 });
41 $h->run;
43 is ($req_url, "/test", "the path of the request URL was ok");
44 is ($req_url2, "/test", "the path of the second request URL was ok");
45 is (`cat /tmp/anyevent_httpd_test`, 'Test response', "the response text was ok");