Skip to content

Commit 6840a91

Browse files
maslinnikneyrox
authored andcommitted
Move NYT::Initialize to separate "weak" hook
Move BEFORE_INIT hook to the beginning commit_hash:9cbf1d95bf1cda4bcce0d3ab9207debcab65391b
1 parent 460044a commit 6840a91

File tree

4 files changed

+14
-0
lines changed

4 files changed

+14
-0
lines changed

library/cpp/testing/gbenchmark/main.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
#include <benchmark/benchmark.h>
22

33
#include <library/cpp/testing/hook/hook.h>
4+
#include <library/cpp/testing/hook/yt_initialize_hook.h>
45
#include <util/generic/scope.h>
56

67
int main(int argc, char** argv) {
8+
InitializeYt(argc, argv);
79
NTesting::THook::CallBeforeInit();
810
::benchmark::Initialize(&argc, argv);
911
if (::benchmark::ReportUnrecognizedArguments(argc, argv)) {

library/cpp/testing/gtest/main.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
#include <library/cpp/string_utils/relaxed_escaper/relaxed_escaper.h>
55
#include <library/cpp/testing/common/env.h>
66
#include <library/cpp/testing/hook/hook.h>
7+
#include <library/cpp/testing/hook/yt_initialize_hook.h>
78
#include <util/generic/scope.h>
89
#include <util/string/join.h>
910
#include <util/system/src_root.h>
@@ -241,6 +242,8 @@ namespace {
241242
}
242243

243244
int NGTest::Main(int argc, char** argv) {
245+
InitializeYt(argc, argv);
246+
244247
auto flags = ParseFlags(argc, argv);
245248

246249
::testing::GTEST_FLAG(filter) = flags.Filter;
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#pragma once
2+
3+
// Since we need to call NYT::Initialize immediately on starting the program, we separate it from other BEFORE_INIT hooks.
4+
// This weak function is overriden in C++ client (see yt/cpp/mapreduce/tests/yt_initialize_hook/yt_hook.cpp).
5+
__attribute__((weak)) void InitializeYt(int, char**) {
6+
}

library/cpp/testing/unittest/utmain.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include <library/cpp/json/writer/json_value.h>
1010
#include <library/cpp/testing/common/env.h>
1111
#include <library/cpp/testing/hook/hook.h>
12+
#include <library/cpp/testing/hook/yt_initialize_hook.h>
1213

1314
#include <util/datetime/base.h>
1415

@@ -709,6 +710,8 @@ int NUnitTest::RunMain(int argc, char** argv) {
709710
Y_ABORT_UNLESS(!sigaction(SIGUSR2, &sa, nullptr));
710711
}
711712
#endif
713+
InitializeYt(argc, argv);
714+
712715
NTesting::THook::CallBeforeInit();
713716
InitNetworkSubSystem();
714717
Singleton<::NPrivate::TTestEnv>();

0 commit comments

Comments
 (0)