1 #include "testing/lib/common.hpp"
2 #include "testing/lib/Cluster.hpp"
3 #include "testing/lib/Retry.hpp"
4 #include "testing/lib/Server.hpp"
6 TEST_CASE("lib/Server") {
7 Server server
{"memcached"};
9 SECTION("starts and listens") {
11 REQUIRE(server
.start().has_value());
13 Retry server_is_listening
{[&server
] {
14 return server
.isListening();
16 REQUIRE(server_is_listening());
20 REQUIRE(server
.stop());
22 SECTION("is waitable") {
24 REQUIRE(server
.wait());
28 REQUIRE_FALSE(server
.check());
35 TEST_CASE("lib/Cluster") {
36 Cluster cluster
{Server
{"memcached", {
37 random_socket_or_port_arg(),
40 SECTION("starts and listens") {
42 REQUIRE(cluster
.start());
44 Retry cluster_is_listening
{[&cluster
] {
45 return cluster
.isListening();
47 REQUIRE(cluster_is_listening());
56 REQUIRE(cluster
.isStopped());