diff --git a/unittests/compiled_tests.cpp b/unittests/compiled_tests.cpp index 062cd13e..dc256ea5 100644 --- a/unittests/compiled_tests.cpp +++ b/unittests/compiled_tests.cpp @@ -1139,15 +1139,23 @@ class Unique_Ptr_Test_Class int getI() const {return 5;} }; + +std::unique_ptr make_Unique_Ptr_Test_Class() +{ + return std::make_unique(); +} + TEST_CASE("Call methods through unique_ptr") { chaiscript::ChaiScript_Basic chai(create_chaiscript_stdlib(),create_chaiscript_parser()); chai.add(chaiscript::var(std::make_unique()), "uptr"); + chai.add(chaiscript::fun(make_Unique_Ptr_Test_Class), "make_Unique_Ptr_Test_Class"); chai.add(chaiscript::fun(&Unique_Ptr_Test_Class::getI), "getI"); CHECK(chai.eval("uptr.getI()") == 5); -} + CHECK(chai.eval("var uptr2 = make_Unique_Ptr_Test_Class(); uptr2.getI()") == 5); +} class A