diff options
author | familom <familom@yandex-team.ru> | 2022-02-10 16:49:49 +0300 |
---|---|---|
committer | Daniil Cherednik <dcherednik@yandex-team.ru> | 2022-02-10 16:49:49 +0300 |
commit | f281aaf77179d27d6208b873e95ae6cd45765a63 (patch) | |
tree | b4229c6ece98c855bd9821ef0b656042c29a8953 /library/cpp/messagebus/rain_check | |
parent | 53d07fb9e28d179add32cd299c9341bf8a231a31 (diff) | |
download | ydb-f281aaf77179d27d6208b873e95ae6cd45765a63.tar.gz |
Restoring authorship annotation for <familom@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'library/cpp/messagebus/rain_check')
-rw-r--r-- | library/cpp/messagebus/rain_check/core/track_ut.cpp | 2 | ||||
-rw-r--r-- | library/cpp/messagebus/rain_check/http/client.cpp | 50 | ||||
-rw-r--r-- | library/cpp/messagebus/rain_check/http/client.h | 38 | ||||
-rw-r--r-- | library/cpp/messagebus/rain_check/http/client_ut.cpp | 86 | ||||
-rw-r--r-- | library/cpp/messagebus/rain_check/http/ya.make | 22 | ||||
-rw-r--r-- | library/cpp/messagebus/rain_check/test/ut/ya.make | 2 |
6 files changed, 100 insertions, 100 deletions
diff --git a/library/cpp/messagebus/rain_check/core/track_ut.cpp b/library/cpp/messagebus/rain_check/core/track_ut.cpp index 05f7de1319..38730cf24f 100644 --- a/library/cpp/messagebus/rain_check/core/track_ut.cpp +++ b/library/cpp/messagebus/rain_check/core/track_ut.cpp @@ -34,7 +34,7 @@ Y_UNIT_TEST_SUITE(TaskTracker) { testSync.WaitFor(1); - UNIT_ASSERT_VALUES_EQUAL(1u, tracker->Size()); + UNIT_ASSERT_VALUES_EQUAL(1u, tracker->Size()); testSync.CheckAndIncrement(1); diff --git a/library/cpp/messagebus/rain_check/http/client.cpp b/library/cpp/messagebus/rain_check/http/client.cpp index 5ef5ceeece..c72fbd33e0 100644 --- a/library/cpp/messagebus/rain_check/http/client.cpp +++ b/library/cpp/messagebus/rain_check/http/client.cpp @@ -1,5 +1,5 @@ -#include "client.h" - +#include "client.h" + #include "http_code_extractor.h" #include <library/cpp/http/io/stream.h> @@ -7,13 +7,13 @@ #include <library/cpp/neh/http_common.h> #include <library/cpp/neh/location.h> #include <library/cpp/neh/neh.h> - + #include <util/generic/ptr.h> #include <util/generic/strbuf.h> #include <util/network/socket.h> #include <util/stream/str.h> - -namespace NRainCheck { + +namespace NRainCheck { class THttpCallback: public NNeh::IOnRecv { public: THttpCallback(NRainCheck::THttpFuture* future) @@ -21,7 +21,7 @@ namespace NRainCheck { { Y_VERIFY(!!future, "future is NULL"); } - + void OnRecv(NNeh::THandle& handle) override { THolder<THttpCallback> self(this); NNeh::TResponseRef response = handle.Get(); @@ -35,24 +35,24 @@ namespace NRainCheck { THttpFuture::THttpFuture() : Task(nullptr) , ErrorCode(THttpFuture::NoError) - { - } - + { + } + THttpFuture::~THttpFuture() { - } - + } + bool THttpFuture::HasError() const { return (ErrorCode != THttpFuture::NoError); } - + THttpFuture::EError THttpFuture::GetErrorCode() const { return ErrorCode; } - + TString THttpFuture::GetErrorDescription() const { return ErrorDescription; } - + THttpClientService::THttpClientService() : GetProtocol(NNeh::ProtocolFactory()->Protocol("http")) , FullProtocol(NNeh::ProtocolFactory()->Protocol("full")) @@ -60,10 +60,10 @@ namespace NRainCheck { Y_VERIFY(!!GetProtocol, "GET protocol is NULL."); Y_VERIFY(!!FullProtocol, "POST protocol is NULL."); } - + THttpClientService::~THttpClientService() { } - + void THttpClientService::SendPost(TString addr, const TString& data, const THttpHeaders& headers, THttpFuture* future) { Y_VERIFY(!!future, "future is NULL."); @@ -86,10 +86,10 @@ namespace NRainCheck { future->SetFail(THttpFuture::OtherError, err.AsStrBuf()); } } - + void THttpClientService::Send(const TString& request, THttpFuture* future) { Y_VERIFY(!!future, "future is NULL."); - + TTaskRunnerBase* current = TTaskRunnerBase::CurrentTask(); future->SetRunning(current); future->Task = current; @@ -115,18 +115,18 @@ namespace NRainCheck { bool THttpFuture::HasResponseBody() const { return !!Response; } - + ui32 THttpFuture::GetHttpCode() const { Y_ASSERT(IsDone()); Y_ASSERT(HasHttpCode()); - + return static_cast<ui32>(*HttpCode); } - + TString THttpFuture::GetResponseBody() const { Y_ASSERT(IsDone()); Y_ASSERT(HasResponseBody()); - + return Response->Data; } @@ -137,18 +137,18 @@ namespace NRainCheck { } else { ErrorCode = THttpFuture::BadHttpCodeError; ErrorDescription = response->GetErrorText(); - + HttpCode = TryGetHttpCodeFromErrorDescription(ErrorDescription); } Response.Reset(response); SetDone(); } - + void THttpFuture::SetFail(THttpFuture::EError errorCode, const TStringBuf& errorDescription) { ErrorCode = errorCode; ErrorDescription = errorDescription; Response.Destroy(); SetDone(); } - + } diff --git a/library/cpp/messagebus/rain_check/http/client.h b/library/cpp/messagebus/rain_check/http/client.h index d4199c4c98..d44567625e 100644 --- a/library/cpp/messagebus/rain_check/http/client.h +++ b/library/cpp/messagebus/rain_check/http/client.h @@ -1,31 +1,31 @@ -#pragma once - +#pragma once + #include <library/cpp/messagebus/rain_check/core/task.h> - + #include <library/cpp/http/misc/httpcodes.h> #include <util/generic/maybe.h> -#include <util/generic/ptr.h> +#include <util/generic/ptr.h> #include <util/generic/string.h> -#include <util/system/defaults.h> -#include <util/system/yassert.h> - +#include <util/system/defaults.h> +#include <util/system/yassert.h> + class THttpHeaders; -namespace NNeh { +namespace NNeh { class IProtocol; struct TResponse; } - -namespace NRainCheck { + +namespace NRainCheck { class THttpCallback; class THttpClientService; - + class THttpFuture: public TSubtaskCompletion { public: enum EError { NoError = 0, - + CantResolveNameError = 1, BadHttpCodeError = 2, @@ -39,17 +39,17 @@ namespace NRainCheck { public: THttpFuture(); ~THttpFuture() override; - + bool HasHttpCode() const; bool HasResponseBody() const; - + ui32 GetHttpCode() const; TString GetResponseBody() const; bool HasError() const; EError GetErrorCode() const; TString GetErrorDescription() const; - + private: void SetDoneAndSchedule(TAutoPtr<NNeh::TResponse> response); void SetFail(EError errorCode, const TStringBuf& errorDescription); @@ -61,18 +61,18 @@ namespace NRainCheck { EError ErrorCode; TString ErrorDescription; }; - + class THttpClientService { public: THttpClientService(); virtual ~THttpClientService(); - + void Send(const TString& request, THttpFuture* future); void SendPost(TString addr, const TString& data, const THttpHeaders& headers, THttpFuture* future); - + private: NNeh::IProtocol* const GetProtocol; NNeh::IProtocol* const FullProtocol; }; - + } diff --git a/library/cpp/messagebus/rain_check/http/client_ut.cpp b/library/cpp/messagebus/rain_check/http/client_ut.cpp index 1628114391..a455727081 100644 --- a/library/cpp/messagebus/rain_check/http/client_ut.cpp +++ b/library/cpp/messagebus/rain_check/http/client_ut.cpp @@ -1,45 +1,45 @@ #include <library/cpp/testing/unittest/registar.h> -#include "client.h" +#include "client.h" #include "http_code_extractor.h" #include <library/cpp/messagebus/rain_check/test/ut/test.h> #include <library/cpp/messagebus/test/helper/fixed_port.h> - + #include <library/cpp/http/io/stream.h> #include <library/cpp/neh/rpc.h> - -#include <util/generic/cast.h> -#include <util/generic/ptr.h> -#include <util/generic/strbuf.h> + +#include <util/generic/cast.h> +#include <util/generic/ptr.h> +#include <util/generic/strbuf.h> #include <util/generic/string.h> -#include <util/generic/vector.h> -#include <util/network/ip.h> +#include <util/generic/vector.h> +#include <util/network/ip.h> #include <util/stream/str.h> #include <util/string/printf.h> -#include <util/system/defaults.h> -#include <util/system/yassert.h> - -#include <cstdlib> +#include <util/system/defaults.h> +#include <util/system/yassert.h> + +#include <cstdlib> #include <utility> - -using namespace NRainCheck; + +using namespace NRainCheck; using namespace NBus::NTest; - -namespace { + +namespace { class THttpClientEnv: public TTestEnvTemplate<THttpClientEnv> { public: THttpClientService HttpClientService; }; - + const TString TEST_SERVICE = "test-service"; const TString TEST_GET_PARAMS = "p=GET"; const TString TEST_POST_PARAMS = "p=POST"; const TString TEST_POST_HEADERS = "Content-Type: application/json\r\n"; const TString TEST_GET_RECV = "GET was ok."; const TString TEST_POST_RECV = "POST was ok."; - + TString BuildServiceLocation(ui32 port) { return Sprintf("http://*:%" PRIu32 "/%s", port, TEST_SERVICE.data()); } @@ -47,11 +47,11 @@ namespace { TString BuildPostServiceLocation(ui32 port) { return Sprintf("post://*:%" PRIu32 "/%s", port + 1, TEST_SERVICE.data()); } - + TString BuildGetTestRequest(ui32 port) { return BuildServiceLocation(port) + "?" + TEST_GET_PARAMS; } - + class TSimpleServer { public: inline void ServeRequest(const NNeh::IRequestRef& req) { @@ -76,16 +76,16 @@ namespace { } catch (...) { Y_FAIL("Can't run server: %s", CurrentExceptionMessage().data()); } - + return runner; - } + } enum ERequestType { RT_HTTP_GET = 0, RT_HTTP_POST = 1 }; - + using TTaskParam = std::pair<TIpPort, ERequestType>; - + class THttpClientTask: public ISimpleTask { public: THttpClientTask(THttpClientEnv* env, TTaskParam param) @@ -118,46 +118,46 @@ namespace { } return &THttpClientTask::GotReplies; - } - + } + TContinueFunc GotReplies() { const TString& TEST_OK_RECV = (ReqType == RT_HTTP_GET) ? TEST_GET_RECV : TEST_POST_RECV; for (size_t i = 0; i < Requests.size(); ++i) { UNIT_ASSERT_EQUAL(Requests[i]->GetHttpCode(), 200); UNIT_ASSERT_EQUAL(Requests[i]->GetResponseBody(), TEST_OK_RECV); } - + Env->TestSync.CheckAndIncrement(0); return nullptr; - } - + } + THttpClientEnv* const Env; const TIpPort ServerPort; const ERequestType ReqType; - + TVector<TSimpleSharedPtr<THttpFuture>> Requests; }; - -} // anonymous namespace - + +} // anonymous namespace + Y_UNIT_TEST_SUITE(RainCheckHttpClient) { - static const TIpPort SERVER_PORT = 4000; - + static const TIpPort SERVER_PORT = 4000; + Y_UNIT_TEST(Simple) { // TODO: randomize port if (!IsFixedPortTestAllowed()) { return; } - TSimpleServer server; - NNeh::IServicesRef runner = RunServer(SERVER_PORT, server); - - THttpClientEnv env; + TSimpleServer server; + NNeh::IServicesRef runner = RunServer(SERVER_PORT, server); + + THttpClientEnv env; TIntrusivePtr<TSimpleTaskRunner> task = env.SpawnTask<THttpClientTask>(TTaskParam(SERVER_PORT, RT_HTTP_GET)); - - env.TestSync.WaitForAndIncrement(1); - } + + env.TestSync.WaitForAndIncrement(1); + } Y_UNIT_TEST(SimplePost) { // TODO: randomize port @@ -202,4 +202,4 @@ Y_UNIT_TEST_SUITE(RainCheckHttpClient) { CHECK_INVALID_LINE(TStringBuf("request failed(HTTP/1.1 3334 Some random message")); #undef CHECK_INVALID_LINE } -} +} diff --git a/library/cpp/messagebus/rain_check/http/ya.make b/library/cpp/messagebus/rain_check/http/ya.make index ef13329df3..579a0935d1 100644 --- a/library/cpp/messagebus/rain_check/http/ya.make +++ b/library/cpp/messagebus/rain_check/http/ya.make @@ -1,17 +1,17 @@ -LIBRARY() - +LIBRARY() + OWNER(g:messagebus) - -SRCS( - client.cpp + +SRCS( + client.cpp http_code_extractor.cpp -) - -PEERDIR( +) + +PEERDIR( library/cpp/messagebus/rain_check/core library/cpp/neh library/cpp/http/misc library/cpp/http/io -) - -END() +) + +END() diff --git a/library/cpp/messagebus/rain_check/test/ut/ya.make b/library/cpp/messagebus/rain_check/test/ut/ya.make index 9f7a93417a..ba5a7849ea 100644 --- a/library/cpp/messagebus/rain_check/test/ut/ya.make +++ b/library/cpp/messagebus/rain_check/test/ut/ya.make @@ -16,7 +16,7 @@ SRCS( ../../core/sleep_ut.cpp ../../core/spawn_ut.cpp ../../core/track_ut.cpp - ../../http/client_ut.cpp + ../../http/client_ut.cpp ../../messagebus/messagebus_client_ut.cpp ../../messagebus/messagebus_server_ut.cpp ) |