MCPcopy Create free account
hub / github.com/anjo76/angelscript / Test2

Function Test2

sdk/tests/test_feature/source/test_debug.cpp:1083–1120  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1081}
1082
1083bool Test2()
1084{
1085 RET_ON_MAX_PORT
1086
1087 bool fail = false;
1088 COutStream out;
1089 int r;
1090
1091 asIScriptEngine *engine = asCreateScriptEngine(ANGELSCRIPT_VERSION);
1092 engine->SetMessageCallback(asMETHOD(COutStream, Callback), &out, asCALL_THISCALL);
1093
1094 RegisterScriptString(engine);
1095 engine->RegisterGlobalFunction("void assert(bool)", asFUNCTION(Assert), asCALL_GENERIC);
1096
1097 engine->RegisterGlobalFunction("void debugCall()", asFUNCTION(DebugCall), asCALL_CDECL);
1098
1099 asIScriptModule *mod = engine->GetModule(0, asGM_ALWAYS_CREATE);
1100
1101 const char *script =
1102 "void func(string@ &out output) \n"
1103 "{ \n"
1104 " debugCall(); \n"
1105 " assert( output == 'test' ); \n"
1106 "} \n";
1107
1108 mod->AddScriptSection("script", script);
1109 r = mod->Build();
1110 if( r < 0 )
1111 TEST_FAILED;
1112
1113 r = ExecuteString(engine, "string @o; func(o); assert( o == 'test' );", mod);
1114 if( r != asEXECUTION_FINISHED )
1115 TEST_FAILED;
1116
1117 engine->Release();
1118
1119 return fail;
1120}
1121
1122} // namespace
1123

Callers 1

TestFunction · 0.70

Calls 8

ExecuteStringFunction · 0.85
SetMessageCallbackMethod · 0.80
AddScriptSectionMethod · 0.80
RegisterScriptStringFunction · 0.70
GetModuleMethod · 0.45
BuildMethod · 0.45
ReleaseMethod · 0.45

Tested by

no test coverage detected