# -*-perl-*-
use strict;
use warnings;
use Test::More;
BEGIN {
require 't/lib/testlib.pl';
}
use Gearman::Client;
use Data::Dumper;
my $db = TestDB->new;
plan tests => 1;
ok($db, "got a test database");
my $srv = TestServer->new($db);
ok($srv, "got a test server");
my $cl = $srv->gearman_client;
my $ret;
# FIXME: test currently requires running gearmand on localhost
{
use IO::Socket::INET;
my $sock = IO::Socket::INET->new(PeerAddr => "127.0.0.1:7003");
ok($sock, "local gearmand is up for testing")
or die "can't continue";
}
sub do_req {
my $req = shift;
my $ret = $cl->do_task("insert_job", json($req));
return undef unless $ret;
return $$ret unless $$ret =~ /^\s*[\[\{]/;
return unjson($$ret);
}
$ret = do_req({
funcname => "foo",
arg => "fooarg",
});
like($ret, qr/^\w+-\d+$/, "got a job handle");