test_smart_ptr_private_first_base.py 432 Bytes
Newer Older
1
2
3
4
5
# -*- coding: utf-8 -*-
import pytest

from pybind11_tests import smart_ptr_private_first_base as m

6
7

def test_make_drvd_pass_base():
8
9
10
    d = m.make_shared_drvd()
    i = m.pass_shared_base(d)
    assert i == 200
11
12
13
14


def test_make_drvd_up_cast_pass_drvd():
    b = m.make_shared_drvd_up_cast()
15
    # the base return is down-cast immediately.
16
17
18
    assert b.__class__.__name__ == "drvd"
    i = m.pass_shared_drvd(b)
    assert i == 200