File: 28-get-prefix.t

package info (click to toggle)
libmemcached-libmemcached-perl 1.001801%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster, stretch
  • size: 912 kB
  • ctags: 773
  • sloc: perl: 1,674; makefile: 25
file content (50 lines) | stat: -rw-r--r-- 1,379 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50

# tests for functions documented in memcached_get.pod
# (except for memcached_fetch_result)

use strict;
use warnings;

use Test::More;

use Memcached::libmemcached
    #   functions explicitly tested by this file
    qw(
        memcached_callback_set
        memcached_callback_get
        MEMCACHED_CALLBACK_PREFIX_KEY
        MEMCACHED_BEHAVIOR_HASH_WITH_PREFIX_KEY
    ),
    #   other functions used by the tests
    qw(
        memcached_set
        memcached_get
    );

use lib 't/lib';
use libmemcached_test;

my $memc = libmemcached_test_create();
my $expire = 5;

plan tests => 13;

ok $memc->memcached_set("f1:a", 4201, $expire);
ok $memc->memcached_set("f2:a", 4202, $expire);
is $memc->memcached_get("f1:a"), 4201;
is $memc->memcached_get("f2:a"), 4202;

ok $memc->memcached_callback_set(MEMCACHED_CALLBACK_PREFIX_KEY, "f1:");
is $memc->memcached_callback_get(MEMCACHED_CALLBACK_PREFIX_KEY), "f1:";
is $memc->memcached_get("a"), 4201;

ok $memc->memcached_callback_set(MEMCACHED_CALLBACK_PREFIX_KEY, "f2:");
is $memc->memcached_callback_get(MEMCACHED_CALLBACK_PREFIX_KEY), "f2:";
is $memc->memcached_get("a"), 4202;

TODO: {
    local $TODO = "MEMCACHED_CALLBACK_PREFIX_KEY should allow empty prefix";
    ok $memc->memcached_callback_set(MEMCACHED_CALLBACK_PREFIX_KEY, "");
    is $memc->memcached_get("f1:a"), 4201;
    is $memc->memcached_get("f2:a"), 4202;
}