AnyEvent-Consul

 view release on metacpan or  search on metacpan

t/10-kv.t  view on Meta::CPAN

SKIP: {
    skip "consul test environment not available", 4 unless $tc;

    my $kv = AnyEvent::Consul->kv(port => $tc->port);
    ok $kv, "got KV API object";

    my $cv = AE::cv;

    $kv->put(foo => "bar", cb => sub {
        my ($r, $meta) = @_;
        ok $r, "key was updated";

        $kv->get("foo", cb => sub {
            my ($r, $meta) = @_;
            is $r->value, "bar", "returned KV has correct value";
            isa_ok $meta, 'Consul::Meta', "got server meta object";

            $cv->send;
        });
    });

t/20-watch.t  view on Meta::CPAN

SKIP: {
    skip "consul test environment not available", 17 unless $tc;

    my $kv = AnyEvent::Consul->kv(port => $tc->port);
    ok $kv, "got KV API object";

    my $cv = AE::cv;

    $kv->put(foo => "bar", cb => sub {
        my ($r, $meta) = @_;
        ok $r, "key was updated";

        $kv->get("foo", cb => sub {
            my ($r, $meta) = @_;
            is $r->value, "bar", "returned KV has correct value";
            isa_ok $meta, 'Consul::Meta', "got server meta object";

            $kv->get("foo", index => $meta->index, cb => sub {
                my ($r, $meta) = @_;
                is $r->value, "baz", "watched KV has correct value";
                $cv->send;
            });

            $kv->put(foo => "baz", cb => sub {
                my ($r, $meta) = @_;
                ok $r, "key was updated";
            });
        });
    });

    $cv->recv;
}

done_testing;



( run in 0.498 second using v1.01-cache-2.11-cpan-0a6323c29d9 )