mirror of
https://github.com/ChaiScript/ChaiScript.git
synced 2025-12-07 01:06:54 +08:00
Add test for unique_ptr returned from function
This commit is contained in:
parent
dca3ce4ea6
commit
2ce155237d
@ -1139,15 +1139,23 @@ class Unique_Ptr_Test_Class
|
||||
int getI() const {return 5;}
|
||||
};
|
||||
|
||||
|
||||
std::unique_ptr<Unique_Ptr_Test_Class> make_Unique_Ptr_Test_Class()
|
||||
{
|
||||
return std::make_unique<Unique_Ptr_Test_Class>();
|
||||
}
|
||||
|
||||
TEST_CASE("Call methods through unique_ptr")
|
||||
{
|
||||
chaiscript::ChaiScript_Basic chai(create_chaiscript_stdlib(),create_chaiscript_parser());
|
||||
|
||||
chai.add(chaiscript::var(std::make_unique<Unique_Ptr_Test_Class>()), "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<int>("uptr.getI()") == 5);
|
||||
}
|
||||
CHECK(chai.eval<int>("var uptr2 = make_Unique_Ptr_Test_Class(); uptr2.getI()") == 5);
|
||||
|
||||
}
|
||||
|
||||
|
||||
class A
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user