4af1a37005d59cd56a9f51b14314c663b1c17987
2 Sample test application.
14 (void)memcached_init(&memc
);
15 memcached_deinit(&memc
);
18 void allocation_test(void)
21 memc
= memcached_init(NULL
);
23 memcached_deinit(memc
);
26 void connection_test(void)
30 memc
= memcached_init(NULL
);
31 rc
= memcached_server_add(memc
, "localhost", 0);
32 assert(rc
== MEMCACHED_SUCCESS
);
34 memcached_deinit(memc
);
42 char *value
= "when we sanitize";
44 memc
= memcached_init(NULL
);
46 rc
= memcached_set(memc
, key
, strlen(key
),
48 (time_t)0, (uint16_t)0);
49 assert(rc
== MEMCACHED_SUCCESS
);
51 memcached_deinit(memc
);
59 char *value
= "when we sanitize";
61 memc
= memcached_init(NULL
);
63 rc
= memcached_add(memc
, key
, strlen(key
),
65 (time_t)0, (uint16_t)0);
66 assert(rc
== MEMCACHED_NOTSTORED
);
68 memcached_deinit(memc
);
71 void replace_test(void)
76 char *value
= "when we sanitize";
78 memc
= memcached_init(NULL
);
80 rc
= memcached_replace(memc
, key
, strlen(key
),
82 (time_t)0, (uint16_t)0);
83 assert(rc
== MEMCACHED_SUCCESS
);
85 memcached_deinit(memc
);
88 void delete_test(void)
93 char *value
= "when we sanitize";
95 memc
= memcached_init(NULL
);
97 rc
= memcached_set(memc
, key
, strlen(key
),
99 (time_t)0, (uint16_t)0);
100 assert(rc
== MEMCACHED_SUCCESS
);
102 rc
= memcached_delete(memc
, key
, strlen(key
), (time_t)0);
103 assert(rc
== MEMCACHED_SUCCESS
);
105 memcached_deinit(memc
);
108 void flush_test(void)
113 memc
= memcached_init(NULL
);
115 rc
= memcached_flush(memc
, 0);
116 assert(rc
== MEMCACHED_SUCCESS
);
118 memcached_deinit(memc
);
127 size_t string_length
;
130 memc
= memcached_init(NULL
);
133 string
= memcached_get(memc
, key
, strlen(key
),
134 &string_length
, &flags
, &rc
);
136 assert(rc
== MEMCACHED_NOTFOUND
);
137 assert(string_length
== 0);
140 memcached_deinit(memc
);
148 char *value
= "when we sanitize";
150 size_t string_length
;
153 memc
= memcached_init(NULL
);
155 rc
= memcached_set(memc
, key
, strlen(key
),
156 value
, strlen(value
),
157 (time_t)0, (uint16_t)0);
158 assert(rc
== MEMCACHED_SUCCESS
);
160 string
= memcached_get(memc
, key
, strlen(key
),
161 &string_length
, &flags
, &rc
);
164 assert(rc
== MEMCACHED_SUCCESS
);
165 assert(string_length
== strlen(value
));
166 assert(!memcmp(string
, value
, string_length
));
170 memcached_deinit(memc
);
179 size_t value_length
= 8191;
181 size_t string_length
;
185 value
= (char*) malloc(value_length
);
186 for (i
=0; i
<value_length
; i
++)
187 value
[i
] = (char) (i
% 127);
189 memc
= memcached_init(NULL
);
191 rc
= memcached_set(memc
, key
, strlen(key
),
193 (time_t)0, (uint16_t)0);
194 assert(rc
== MEMCACHED_SUCCESS
);
196 string
= memcached_get(memc
, key
, strlen(key
),
197 &string_length
, &flags
, &rc
);
199 assert(string_length
== value_length
);
200 assert(!memcmp(string
, value
, string_length
));
205 memcached_deinit(memc
);
208 void stats_hostname_test(void)
211 memcached_stat_st stat
;
212 rc
= memcached_stat_hostname(&stat
, NULL
,
214 MEMCACHED_DEFAULT_PORT
);
217 void increment_test(void)
220 unsigned int new_number
;
225 memc
= memcached_init(NULL
);
227 rc
= memcached_set(memc
, key
, strlen(key
),
228 value
, strlen(value
),
229 (time_t)0, (uint16_t)0);
230 assert(rc
== MEMCACHED_SUCCESS
);
232 rc
= memcached_increment(memc
, key
, strlen(key
),
234 assert(rc
== MEMCACHED_SUCCESS
);
235 assert(new_number
== 1);
237 rc
= memcached_increment(memc
, key
, strlen(key
),
239 assert(rc
== MEMCACHED_SUCCESS
);
240 assert(new_number
== 2);
242 memcached_deinit(memc
);
245 void decrement_test(void)
248 unsigned int new_number
;
253 memc
= memcached_init(NULL
);
255 rc
= memcached_set(memc
, key
, strlen(key
),
256 value
, strlen(value
),
257 (time_t)0, (uint16_t)0);
258 assert(rc
== MEMCACHED_SUCCESS
);
260 rc
= memcached_decrement(memc
, key
, strlen(key
),
262 assert(rc
== MEMCACHED_SUCCESS
);
263 assert(new_number
== 2);
265 rc
= memcached_decrement(memc
, key
, strlen(key
),
267 assert(rc
== MEMCACHED_SUCCESS
);
268 assert(new_number
== 1);
270 memcached_deinit(memc
);
278 char *value
= "sanford and sun";
280 memc
= memcached_init(NULL
);
282 rc
= memcached_set(memc
, key
, strlen(key
),
283 value
, strlen(value
),
284 (time_t)10, (uint16_t)3);
285 assert(rc
== MEMCACHED_SUCCESS
);
286 memcached_quit(memc
);
288 rc
= memcached_set(memc
, key
, strlen(key
),
289 value
, strlen(value
),
290 (time_t)50, (uint16_t)9);
291 assert(rc
== MEMCACHED_SUCCESS
);
293 memcached_deinit(memc
);
300 char *keys
[]= {"fudge", "son", "food"};
301 size_t key_length
[]= {5, 3, 4};
305 char return_key
[MEMCACHED_MAX_KEY
];
306 size_t return_key_length
;
308 size_t return_value_length
;
310 memc
= memcached_init(NULL
);
313 rc
= memcached_mget(memc
, keys
, key_length
, 3);
314 assert(rc
== MEMCACHED_SUCCESS
);
316 while (return_value
= memcached_fetch(memc
, return_key
, &return_key_length
,
317 &return_value_length
, &flags
, &rc
))
319 assert(return_value
);
321 assert(return_value_length
== 0);
322 assert(rc
== MEMCACHED_NOTFOUND
);
324 for (x
= 0; x
< 3; x
++)
326 rc
= memcached_set(memc
, keys
[x
], key_length
[x
],
327 keys
[x
], key_length
[x
],
328 (time_t)50, (uint16_t)9);
329 assert(rc
== MEMCACHED_SUCCESS
);
332 rc
= memcached_mget(memc
, keys
, key_length
, 3);
333 assert(rc
== MEMCACHED_SUCCESS
);
336 while (return_value
= memcached_fetch(memc
, return_key
, &return_key_length
,
337 &return_value_length
, &flags
, &rc
))
339 assert(return_value
);
340 assert(rc
== MEMCACHED_SUCCESS
);
341 assert(key_length
[x
] == return_value_length
);
342 assert(!memcmp(return_value
, keys
[x
], return_value_length
));
347 memcached_deinit(memc
);
350 void get_stats_keys(void)
354 memcached_stat_st stat
;
357 list
= memcached_stat_get_keys(&stat
, &rc
);
358 assert(rc
== MEMCACHED_SUCCESS
);
359 for (ptr
= list
; *ptr
; ptr
++)
360 printf("Found key %s\n", *ptr
);
369 /* Clean the server before beginning testing */
383 stats_hostname_test();
391 /* Clean up whatever we might have left */