1 #include "test/lib/common.hpp"
2 #include "test/lib/Shell.hpp"
3 #include "test/lib/MemcachedCluster.hpp"
5 TEST_CASE("memcached_sasl") {
6 #if !LIBMEMCACHED_WITH_SASL_SUPPORT
7 WARN("ENABLE_SASL=OFF");
10 string mc
{MEMCACHED_BINARY
}, err
;
12 if (!sh
.run(mc
+ " -S --version", err
)) {
13 WARN(mc
<< ": " << err
);
15 auto test
= MemcachedCluster::sasl();
16 auto memc
= &test
.memc
;
18 REQUIRE_SUCCESS(memcached_set(memc
, S(__func__
), S(__func__
), 0, 0));
19 REQUIRE_SUCCESS(memcached_delete(memc
, S(__func__
), 0));
20 REQUIRE_SUCCESS(memcached_destroy_sasl_auth_data(memc
));
21 REQUIRE_SUCCESS(memcached_destroy_sasl_auth_data(memc
));
22 REQUIRE_RC(MEMCACHED_INVALID_ARGUMENTS
, memcached_destroy_sasl_auth_data(nullptr));
26 REQUIRE_RC(MEMCACHED_AUTH_FAILURE
, memcached_set(memc
, S(__func__
), S(__func__
), 0, 0));
28 REQUIRE_SUCCESS(memcached_set_sasl_auth_data(memc
, "username", "password"));
29 REQUIRE_RC(MEMCACHED_AUTH_FAILURE
, memcached_set(memc
, S(__func__
), S(__func__
), 0, 0));