private void SimulateAction(SessionHelper session, Type nativeType, string name, JsValueType retType, ref int remoteId, params int[] args) { var action = session.DefineFunctionMessage(nativeType.GetMethod(name)); session.InvokeFunctionMessage(action.Name, 0); var id = ++remoteId; session.OnReturnMessage(false, JsValueType.JsObject, id); JsValue[] wrapped = args.Select(x => new JsValue(x)).ToArray(); session.InvokeDelegateMessage(id, wrapped); session.OnReturnMessage(false, retType, null); }