aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/messagebus/moved_ut.cpp
blob: 5345b81947f77fec95ac5755b212576f8dabca83 (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);
    }
}