comparison tests/test_pymonkey.py @ 155:b0c9d6884da3

Annoying workaround to get_stack() for the script object issue discovered in my last commit.
author Atul Varma <varmaa@toolness.com>
date Sun, 30 Aug 2009 11:34:35 -0700
parents 5ec81091cb89
children a31ff2de6017
comparison
equal deleted inserted replaced
154:5ec81091cb89 155:b0c9d6884da3
79 obj = cx.new_object() 79 obj = cx.new_object()
80 cx.init_standard_classes(obj) 80 cx.init_standard_classes(obj)
81 jsfunc = cx.new_function(func, func.__name__) 81 jsfunc = cx.new_function(func, func.__name__)
82 self._clearOnTeardown(jsfunc) 82 self._clearOnTeardown(jsfunc)
83 cx.define_property(obj, func.__name__, jsfunc) 83 cx.define_property(obj, func.__name__, jsfunc)
84 cx.evaluate_script(obj, 'func()', '<string>', 1) 84 cx.evaluate_script(obj, '(function() { func() })()', '<string>', 1)
85 script = stack_holder[0]['caller']['script'] 85 script = stack_holder[0]['caller']['caller']['script']
86 pc = stack_holder[0]['caller']['pc'] 86 pc = stack_holder[0]['caller']['caller']['pc']
87 self.assertEqual(script.filename, '<string>') 87 self.assertEqual(script.filename, '<string>')
88 self.assertEqual(stack_holder[0]['caller']['lineno'], 1) 88 self.assertEqual(stack_holder[0]['caller']['caller']['lineno'], 1)
89 self.assertTrue(pc >= 0 and pc < len(buffer(script))) 89 self.assertTrue(pc >= 0 and pc < len(buffer(script)))
90 self.assertEqual(stack_holder[0]['caller']['caller'], None) 90 self.assertEqual(stack_holder[0]['caller']['caller']['caller'], None)
91 91
92 def testScriptHasFilenameMember(self): 92 def testScriptHasFilenameMember(self):
93 cx = pymonkey.Runtime().new_context() 93 cx = pymonkey.Runtime().new_context()
94 script = cx.compile_script('foo', '<string>', 1) 94 script = cx.compile_script('foo', '<string>', 1)
95 self.assertEqual(script.filename, '<string>') 95 self.assertEqual(script.filename, '<string>')