Author: Tim Felgentreff <timfelgentr...@gmail.com> Branch: Changeset: r146:010bf1facb18 Date: 2013-03-08 14:59 +0100 http://bitbucket.org/pypy/lang-smalltalk/changeset/010bf1facb18/
Log: (tfel, tpape) actually check that the vm keeps image name around diff --git a/spyvm/test/test_primitives.py b/spyvm/test/test_primitives.py --- a/spyvm/test/test_primitives.py +++ b/spyvm/test/test_primitives.py @@ -32,7 +32,9 @@ if isinstance(x, str): return space.wrap_string(x) if isinstance(x, list): return space.wrap_list(x) raise NotImplementedError - + +IMAGENAME = "anImage.image" + def mock(stack, context = None): mapped_stack = [wrap(x) for x in stack] if context is None: @@ -41,7 +43,7 @@ frame = context for i in range(len(stack)): frame.as_context_get_shadow(space).push(stack[i]) - interp = interpreter.Interpreter(space) + interp = interpreter.Interpreter(space, image_name=IMAGENAME) return (interp, frame, len(stack)) def prim(code, stack, context = None): @@ -428,7 +430,7 @@ def test_image_name(): w_v = prim(primitives.IMAGE_NAME, [2]) - assert w_v.bytes == [] + assert w_v.bytes == list(IMAGENAME) def test_clone(): w_obj = mockclass(space, 1, varsized=True).as_class_get_shadow(space).new(1) diff --git a/targetimageloadingsmalltalk.py b/targetimageloadingsmalltalk.py --- a/targetimageloadingsmalltalk.py +++ b/targetimageloadingsmalltalk.py @@ -51,7 +51,7 @@ def entry_point(argv): idx = 1 - image = None + path = None number = 0 benchmark = None @@ -73,20 +73,20 @@ _arg_missing(argv, idx, arg) benchmark = argv[idx + 1] idx += 1 - elif image is None: - image = argv[idx] + elif path is None: + path = argv[idx] else: _usage(argv) return -1 idx += 1 - if image is None: - image = "Squeak.image" + if path is None: + path = "Squeak.image" try: - f = open_file_as_stream(image) + f = open_file_as_stream(path) except OSError as e: - os.write(2, "%s -- %s (LoadError)\n" % (os.strerror(e.errno), image)) + os.write(2, "%s -- %s (LoadError)\n" % (os.strerror(e.errno), path)) return 1 try: imagedata = f.readall() @@ -95,7 +95,7 @@ image_reader = squeakimage.reader_for_image(space, squeakimage.Stream(data=imagedata)) image = create_image(space, image_reader) - interp = interpreter.Interpreter(space, image) + interp = interpreter.Interpreter(space, image, image_name=os.path.abspath(path)) if benchmark is not None: return _run_benchmark(interp, number, benchmark) else: _______________________________________________ pypy-commit mailing list pypy-commit@python.org http://mail.python.org/mailman/listinfo/pypy-commit