X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;ds=sidebyside;f=test%2Ftests%2Fmemcached%2Fprepend.cpp;fp=test%2Ftests%2Fmemcached%2Fprepend.cpp;h=533cd3be7a43011c96d0acbc087647a543e39d67;hb=9f262c9ea92d4869715ca6f534c80075a8310ac1;hp=0000000000000000000000000000000000000000;hpb=004d7eb1e658759b4d30932f414ed2de9a134519;p=awesomized%2Flibmemcached diff --git a/test/tests/memcached/prepend.cpp b/test/tests/memcached/prepend.cpp new file mode 100644 index 00000000..533cd3be --- /dev/null +++ b/test/tests/memcached/prepend.cpp @@ -0,0 +1,28 @@ +#include "test/lib/common.hpp" +#include "test/lib/MemcachedCluster.hpp" + +TEST_CASE("memcached_prepend") { + pair tests[] = { + {"network", MemcachedCluster::network()}, + {"socket", MemcachedCluster::socket()} + }; + + LOOPED_SECTION(tests) { + auto memc = &test.memc; + + test.flush(); + + REQUIRE_RC(MEMCACHED_NOTSTORED, memcached_prepend(memc, S(__func__), S("fail"), 0, 0)); + REQUIRE_SUCCESS(memcached_set(memc, S(__func__), S("initial"), 0, 0)); + REQUIRE_SUCCESS(memcached_prepend(memc, S(__func__), S("pre1"), 0, 0)); + REQUIRE_SUCCESS(memcached_prepend(memc, S(__func__), S("pre2"), 0, 0)); + + memcached_return_t rc; + uint32_t flags; + size_t len; + char *val = memcached_get(memc, S(__func__), &len, &flags, &rc); + Malloced v(val); + REQUIRE_SUCCESS(rc); + REQUIRE("pre2pre1initial" == string(val, len)); + } +}