/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
library/cpp/yt/memory/unittests/shared_range_ut.cpp
44 строки
922 B
ponasenko-rs
YT-20424: Fix move constructor and assignment for TSharedRange.
14 ноя 2023, 18:12
14 ноя 2023, 18:12
2551170
Код
Авторство
О чём код?
#include <library/cpp/testing/gtest/gtest.h> #include <library/cpp/yt/memory/new.h> #include <library/cpp/yt/memory/shared_range.h> namespace NYT { namespace { //////////////////////////////////////////////////////////////////////////////// DECLARE_REFCOUNTED_STRUCT(THolder); struct THolder : public TRefCounted { int Value; THolder(int value) : Value(value) { } }; DEFINE_REFCOUNTED_TYPE(THolder); //////////////////////////////////////////////////////////////////////////////// TEST(TSharedRange, Move) { auto holder = New<THolder>(0); int* raw = &holder->Value; auto sharedRange = MakeSharedRange<int>({raw, 1}, std::move(holder)); { auto sharedRangeMovedTo = std::move(sharedRange); } EXPECT_TRUE(sharedRange.ToVector().empty()); } //////////////////////////////////////////////////////////////////////////////// } // namespace } // namespace NYT