From 2721e39e126d86451d8fe6a28621da4db6315b2f Mon Sep 17 00:00:00 2001 From: lampayan Date: Wed, 8 Jun 2016 15:21:09 +0200 Subject: [PATCH] coexisting approaches with working UTs --- CMakeLists.txt | 2 +- src/AsyncDeleteResponse.cpp | 1 + src/Client.cpp | 6 ++++-- tst/EtcdTest.cpp | 29 ++++++++++++++++------------- 4 files changed, 22 insertions(+), 16 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a1d7af9..aa1e223 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,7 +10,7 @@ set (etcd-cpp-api_VERSION_MINOR 1) enable_testing() -include_directories(${CMAKE_CURRENT_SOURCE_DIR} /home/arches/casablanca/Release/include /home/arches/grpc/include) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Werror") diff --git a/src/AsyncDeleteResponse.cpp b/src/AsyncDeleteResponse.cpp index 661ad7a..6e65e73 100644 --- a/src/AsyncDeleteResponse.cpp +++ b/src/AsyncDeleteResponse.cpp @@ -18,4 +18,5 @@ etcd::AsyncDeleteResponse::~AsyncDeleteResponse() { void etcd::AsyncDeleteResponse::fillUpV2ResponseValues(etcdserverpb::RangeResponse getResponse) { _prev_value.value = getResponse.kvs().Get(0).value(); _action = "delete"; + } diff --git a/src/Client.cpp b/src/Client.cpp index 95d6042..e6e86a3 100644 --- a/src/Client.cpp +++ b/src/Client.cpp @@ -82,11 +82,12 @@ pplx::task etcd::Client::modify_if(std::string const & key, std: void etcd::Client::getEntryForPreviousValue(const std::string& entryKey, etcd::AsyncDeleteResponse* drp) { + std::cout << "get entry for previous value" << std::endl; etcdserverpb::RangeRequest rangeRequest; rangeRequest.set_key(entryKey); etcdserverpb::RangeResponse rangeResponse; grpc::ClientContext context; - grpc::Status status = stub_->Range(&context, rangeRequest, &rangeResponse); + grpc::Status status = grpcClient.stub_->Range(&context, rangeRequest, &rangeResponse); if (status.ok()) { std::cout << "get OK" << std::endl; drp->fillUpV2ResponseValues(rangeResponse); @@ -103,7 +104,7 @@ pplx::task etcd::Client::removeEntry(std::string const & entryKe etcdserverpb::DeleteRangeRequest deleteRangeRequest; deleteRangeRequest.set_key(entryKey); - drp->rpcInstance = stub_->AsyncDeleteRange(&drp->context, deleteRangeRequest, &drp->cq_); + drp->rpcInstance = grpcClient.stub_->AsyncDeleteRange(&drp->context, deleteRangeRequest, &drp->cq_); drp->rpcInstance->Finish(&drp->deleteResponse, &drp->status, (void*)drp); return Response::createV2Response(drp); @@ -139,6 +140,7 @@ void etcd::Client::getv3(std::string const & key) { pplx::task etcd::Client::rm(std::string const & key) { + std::cout << "rm called" << std::endl; return removeEntry(key); } diff --git a/tst/EtcdTest.cpp b/tst/EtcdTest.cpp index 87985a3..69f59fd 100644 --- a/tst/EtcdTest.cpp +++ b/tst/EtcdTest.cpp @@ -1,18 +1,20 @@ #define CATCH_CONFIG_MAIN #include +#include #include "etcd/Client.hpp" -//TEST_CASE("setup") -//{ - etcd::Client etcd("http://192.168.99.100:2379"); + +TEST_CASE("setup") +{ + etcd::Client etcd("http://127.0.0.1:4001"); //etcd.rmdir("/test", true).wait(); } TEST_CASE("add a new key") { - etcd::Client etcd("http://192.168.99.100:2379"); + etcd::Client etcd("http://127.0.0.1:4001"); etcd::Response resp = etcd.add("/test/key1", "42").get(); REQUIRE(0 == resp.error_code()); CHECK("create" == resp.action()); @@ -31,7 +33,7 @@ TEST_CASE("add a new key") TEST_CASE("read a value from etcd") { - etcd::Client etcd("http://192.168.99.100:2379"); + etcd::Client etcd("http://127.0.0.1:4001"); etcd::Response resp = etcd.get("/test/key1").get(); CHECK("get" == resp.action()); REQUIRE(resp.is_ok()); @@ -44,7 +46,7 @@ TEST_CASE("read a value from etcd") TEST_CASE("simplified read") { - etcd::Client etcd("http://192.168.99.100:2379"); + etcd::Client etcd("http://127.0.0.1:4001"); CHECK("42" == etcd.get("/test/key1").get().value().as_string()); CHECK(100 == etcd.get("/test/key2").get().error_code()); // Key not found } @@ -53,7 +55,7 @@ TEST_CASE("simplified read") TEST_CASE("modify a key") { - etcd::Client etcd("http://192.168.99.100:2379"); + etcd::Client etcd("http://127.0.0.1:4001"); etcd::Response resp = etcd.modify("/test/key1", "43").get(); REQUIRE(0 == resp.error_code()); // overwrite CHECK("update" == resp.action()); @@ -65,7 +67,7 @@ TEST_CASE("modify a key") TEST_CASE("set a key") { - etcd::Client etcd("http://192.168.99.100:2379"); + etcd::Client etcd("http://127.0.0.1:4001"); etcd::Response resp = etcd.set("/test/key1", "43").get(); REQUIRE(0 == resp.error_code()); // overwrite CHECK("set" == resp.action()); @@ -77,7 +79,7 @@ TEST_CASE("set a key") TEST_CASE("atomic compare-and-swap") { - etcd::Client etcd("http://192.168.99.100:2379"); + etcd::Client etcd("http://127.0.0.1:4001"); etcd.set("/test/key1", "42").wait(); // modify success @@ -94,18 +96,19 @@ TEST_CASE("atomic compare-and-swap") CHECK("Compare failed" == res.error_message()); } -#if 0 - TEST_CASE("delete a value") { + std::cout << "delete a value fbdl" << std::endl; etcd::Client etcd("http://127.0.0.1:4001"); - CHECK(3 == etcd.ls("/test").get().keys().size()); +// CHECK(3 == etcd.ls("/test").get().keys().size()); // not supported in v3 etcd::Response resp = etcd.rm("/test/key1").get(); CHECK("43" == resp.prev_value().as_string()); CHECK("delete" == resp.action()); - CHECK(2 == etcd.ls("/test").get().keys().size()); +// CHECK(2 == etcd.ls("/test").get().keys().size()); // not supported in v3 } +#if 0 + TEST_CASE("create a directory") { etcd::Client etcd("http://127.0.0.1:4001");