# HG changeset patch # User Atul Varma # Date 1252365514 25200 # Node ID 9413bebf2ee616888d53dc8c5bb8e5d2afab4808 # Parent 1950b0b5bcd8dbad3369c2862026667e5ff8d0d7 Separated the test functionality out into a separate file. diff -r 1950b0b5bcd8 -r 9413bebf2ee6 pydershell/pydershell.py --- a/pydershell/pydershell.py Mon Sep 07 15:33:35 2009 -0700 +++ b/pydershell/pydershell.py Mon Sep 07 16:18:34 2009 -0700 @@ -1,5 +1,3 @@ -#! /usr/bin/env python - import sys import time import threading @@ -368,46 +366,3 @@ traceback.print_tb(e.exc_info[2]) print e.exc_info[1] return retval - -if __name__ == '__main__': - sandbox = JsSandbox() - - class Baz(JsExposedObject): - def woozle(self, blap): - return blap + 5 - woozle.__jsexposed__ = True - - def baz(): - return Baz() - sandbox.root.baz = baz - - def bar(obj): - print obj.bar() - sandbox.root.bar = bar - - def foo(callback): - return callback() - sandbox.root.foo = foo - - def ensureBaz(baz): - if not isinstance(baz, Baz): - print "Uhoh" - else: - print "ok" - sandbox.root.ensureBaz = ensureBaz - - def jsprint(string): - print string - sandbox.root['print'] = jsprint - - retval = sandbox.run_script('test.js') - - sandbox.finish() - del sandbox - - import gc - gc.collect() - if pydermonkey.get_debug_info()['runtime_count']: - print "WARNING: JS runtime was not destroyed." - - sys.exit(retval) diff -r 1950b0b5bcd8 -r 9413bebf2ee6 pydershell/test.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pydershell/test.py Mon Sep 07 16:18:34 2009 -0700 @@ -0,0 +1,51 @@ +#! /usr/bin/env python + +# Trivial embedding of pydershell. + +import sys + +import pydermonkey +from pydershell import JsSandbox, JsExposedObject + +if __name__ == '__main__': + sandbox = JsSandbox() + + class Baz(JsExposedObject): + def woozle(self, blap): + return blap + 5 + woozle.__jsexposed__ = True + + def baz(): + return Baz() + sandbox.root.baz = baz + + def bar(obj): + print obj.bar() + sandbox.root.bar = bar + + def foo(callback): + return callback() + sandbox.root.foo = foo + + def ensureBaz(baz): + if not isinstance(baz, Baz): + print "Uhoh" + else: + print "ok" + sandbox.root.ensureBaz = ensureBaz + + def jsprint(string): + print string + sandbox.root['print'] = jsprint + + retval = sandbox.run_script('test.js') + + sandbox.finish() + del sandbox + + import gc + gc.collect() + if pydermonkey.get_debug_info()['runtime_count']: + print "WARNING: JS runtime was not destroyed." + + sys.exit(retval)