aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/messagebus/moved_ut.cpp
blob: c1a07cce7ee3c58701c90eb72ae5b3d3502933af (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <library/cpp/testing/unittest/registar.h>

#include "moved.h"

Y_UNIT_TEST_SUITE(TMovedTest) {
    Y_UNIT_TEST(Simple) {
        TMoved<THolder<int>> h1(MakeHolder<int>(10));
        TMoved<THolder<int>> h2 = h1;
        UNIT_ASSERT(!*h1);
        UNIT_ASSERT(!!*h2);
        UNIT_ASSERT_VALUES_EQUAL(10, **h2);
    }

    void Foo(TMoved<THolder<int>> h) {
        UNIT_ASSERT_VALUES_EQUAL(11, **h);
    }

    Y_UNIT_TEST(PassToFunction) {
        THolder<int> h(new int(11));
        Foo(h);
    }
}