AnyEvent-RipeRedis
view release on metacpan or search on metacpan
t/04-commands.t view on Meta::CPAN
if ( defined $err ) {
diag( $err->message );
}
$cv->send;
}
);
}
);
is( $t_reply, 'OK', 'write UTF-8 string; SET' );
return;
}
sub t_get_utf8_string {
my $redis = shift;
my $t_reply;
ev_loop(
sub {
my $cv = shift;
$redis->set( 'клÑÑ', 'ÐнаÑение' );
$redis->get( 'клÑÑ',
sub {
$t_reply = shift;
my $err = shift;
if ( defined $err ) {
diag( $err->message );
}
}
);
$redis->del( 'клÑÑ',
sub {
my $reply = shift;
my $err = shift;
if ( defined $err ) {
diag( $err->message );
}
$cv->send;
}
);
}
);
is( $t_reply, 'ÐнаÑение', 'read UTF-8 string; GET' );
return;
}
sub t_get_non_existent {
my $redis = shift;
my $t_reply = 'not_undef';
my $t_err;
ev_loop(
sub {
my $cv = shift;
$redis->get( 'non_existent',
sub {
$t_reply = shift;
$t_err = shift;
if ( defined $t_err ) {
diag( $t_err->message );
}
$cv->send;
}
);
}
);
ok( !defined $t_reply && !defined $t_err, 'read non existent key; GET' );
return;
}
sub t_mbulk_reply {
my $redis = shift;
my $t_reply;
ev_loop(
sub {
my $cv = shift;
for ( my $i = 1; $i <= 3; $i++ ) {
$redis->rpush( 'list', "element_$i" );
}
$redis->lrange( 'list', 0, -1,
sub {
$t_reply = shift;
my $err = shift;
if ( $err ) {
diag( $err->message );
}
}
);
$redis->del( 'list',
sub {
my $reply = shift;
my $err = shift;
if ( defined $err ) {
diag( $err->message );
}
$cv->send;
}
);
}
);
is_deeply( $t_reply,
[ qw(
element_1
element_2
element_3
)
],
'multi-bulk reply; LRANGE'
);
return;
}
sub t_mbulk_reply_empty_list {
my $redis = shift;
my $t_reply;
ev_loop(
sub {
my $cv = shift;
$redis->lrange( 'non_existent', 0, -1,
sub {
$t_reply = shift;
my $err = shift;
if ( defined $err ) {
diag( $err->message );
}
$cv->send;
}
);
}
);
is_deeply( $t_reply, [], 'read empty list; LRANGE' );
return;
}
sub t_mbulk_reply_undef {
my $redis = shift;
my $t_reply = 'not_undef';
my $t_err;
ev_loop(
sub {
my $cv = shift;
$redis->brpop( 'non_existent', '1',
sub {
$t_reply = shift;
$t_err = shift;
if ( defined $t_err ) {
diag( $t_err->message );
}
$cv->send;
}
);
}
);
ok( !defined $t_reply && !defined $t_err, 'read multi-bulk undef; BLPOP' );
return;
}
sub t_nested_mbulk_reply {
my $redis = shift;
my $t_reply;
ev_loop(
sub {
my $cv = shift;
for ( my $i = 1; $i <= 3; $i++ ) {
$redis->rpush( 'list', "element_$i" );
}
$redis->set( 'bar', "some\r\nstring" );
$redis->multi;
$redis->incr( 'foo' );
$redis->lrange( 'list', 0, -1 );
$redis->lrange( 'non_existent', 0, -1 );
$redis->get( 'bar' );
$redis->lrange( 'list', 0, -1 );
$redis->exec(
sub {
$t_reply = shift;
my $err = shift;
if ( defined $err ) {
diag( $err->message );
}
}
);
$redis->del( qw( foo bar list ),
sub {
( run in 1.929 second using v1.01-cache-2.11-cpan-39bf76dae61 )