def test_applevel_noargs(space): app = appdef("""app(): return 42 """) assert app.func_name == 'app' w_result = app(space) assert space.eq_w(w_result, space.wrap(42))
def test_applevel_with_one_default(space): app = appdef("""app(x,y=1): return x + y """) assert app.func_name == 'app' w_result = app(space, space.wrap(41)) assert space.eq_w(w_result, space.wrap(42))
def test_simple_applevel(space): app = appdef("""app(x,y): return x + y """) assert app.func_name == 'app' w_result = app(space, space.wrap(41), space.wrap(1)) assert space.eq_w(w_result, space.wrap(42))
def test_applevel_with_two_defaults(space): app = appdef("""app(x=1,y=2): return x + y """) w_result = app(space, space.wrap(41), space.wrap(1)) assert space.eq_w(w_result, space.wrap(42)) w_result = app(space, space.wrap(15)) assert space.eq_w(w_result, space.wrap(17)) w_result = app(space) assert space.eq_w(w_result, space.wrap(3))
return 'F' elif req_order == 'K': return proto_order elif req_order == 'A': return proto_order def descr_set_docstring(space, w_obj, w_docstring): if not isinstance(space, StdObjSpace): raise oefmt(space.w_NotImplementedError, "This only works with the real object space") if isinstance(w_obj, W_TypeObject): w_obj.w_doc = w_docstring return elif isinstance(w_obj, GetSetProperty): if space.is_none(w_docstring): doc = None else: doc = space.str_w(w_docstring) w_obj.doc = doc return app_set_docstring(space, w_obj, w_docstring) app_set_docstring = appdef("""app_set_docstring_(obj, docstring): import types if isinstance(obj, types.MethodType): obj.im_func.__doc__ = docstring else: obj.__doc__ = docstring """)
def test_app2interp_somefunc(space): app = appdef(somefunc) w_result = app(space) assert space.eq_w(w_result, space.wrap(42))
elif req_order == 'K': return proto_order elif req_order == 'A': return proto_order def descr_set_docstring(space, w_obj, w_docstring): if not isinstance(space, StdObjSpace): raise oefmt(space.w_NotImplementedError, "This only works with the real object space") if isinstance(w_obj, W_TypeObject): w_obj.w_doc = w_docstring return elif isinstance(w_obj, GetSetProperty): if space.is_none(w_docstring): doc = None else: doc = space.str_w(w_docstring) w_obj.doc = doc return app_set_docstring(space, w_obj, w_docstring) app_set_docstring = appdef("""app_set_docstring_(obj, docstring): import types if isinstance(obj, types.MethodType): obj.im_func.__doc__ = docstring else: obj.__doc__ = docstring """)