// // Created by ZekeXiao on 2025/10/18. // // // Created by ZekeXiao on 2025/10/18. // #include #include "mrubypp.h" TEST_CASE("none args call", "[engine]") { mrubypp engine; engine.load(R"( def get_1() 1 end )"); auto b = engine.call("get_1"); REQUIRE(b == 1); } TEST_CASE("args call", "[engine]") { mrubypp engine; engine.load(R"( def add(a) a.sort! a[0] end )"); std::vector a{3, 1, 2}; auto b = engine.call("add", a); REQUIRE(b == 1); } TEST_CASE("call benchmark", "[!benchmark]") { mrubypp engine; engine.load(R"( def get_same(a) return a end )"); BENCHMARK("call and return") { auto b = engine.call("get_same", 1); REQUIRE(b == 1); }; }