Mercurial > pymonkey
diff test_pymonkey.py @ 16:532b7ddca616
Created a new context.evaluate_script() function, replacing pymonkey.evaluate(). Separated out one of the big unit tests into several.
author | Atul Varma <varmaa@toolness.com> |
---|---|
date | Sun, 28 Jun 2009 19:01:43 -0700 |
parents | 9edcdb4ab12d |
children | 0812422ec99e |
line wrap: on
line diff
--- a/test_pymonkey.py Sun Jun 28 18:39:43 2009 -0700 +++ b/test_pymonkey.py Sun Jun 28 19:01:43 2009 -0700 @@ -2,47 +2,58 @@ import pymonkey class PymonkeyTests(unittest.TestCase): - def testJSRuntimeWorks(self): + def _evaljs(self, code): rt = pymonkey.Runtime() cx = rt.new_context() - self.assertRaises(TypeError, pymonkey.Context) + obj = cx.new_object() + cx.init_standard_classes(obj) + return cx.evaluate_script(obj, code, '<string>', 1) + + def testContextIsInstance(self): + cx = pymonkey.Runtime().new_context() self.assertTrue(isinstance(cx, pymonkey.Context)) - self.assertEqual(cx.get_runtime(), rt) - obj = cx.new_object() - self.assertRaises(TypeError, pymonkey.Object) + def testContextTypeCannotBeInstantiated(self): + self.assertRaises(TypeError, pymonkey.Context) + + def testObjectIsInstance(self): + obj = pymonkey.Runtime().new_context().new_object() self.assertTrue(isinstance(obj, pymonkey.Object)) - cx.init_standard_classes(obj) + def testObjectTypeCannotBeInstantiated(self): + self.assertRaises(TypeError, pymonkey.Object) + + def testGetRuntimeWorks(self): + rt = pymonkey.Runtime() + cx = rt.new_context() + self.assertEqual(cx.get_runtime(), rt) def testUndefinedCannotBeInstantiated(self): self.assertRaises(TypeError, pymonkey.undefined) def testEvaluateReturnsUndefined(self): - retval = pymonkey.evaluate("", '<string>', 1) + retval = self._evaljs("") self.assertTrue(retval is pymonkey.undefined) def testEvaluateReturnsUnicode(self): - retval = pymonkey.evaluate("'o hai\u2026'", '<string>', 1) + retval = self._evaljs("'o hai\u2026'") self.assertTrue(type(retval) == unicode) self.assertEqual(retval, u'o hai\u2026') def testEvaluateReturnsTrue(self): - self.assertTrue(pymonkey.evaluate('true', '<string>', 1) is True) + self.assertTrue(self._evaljs('true') is True) def testEvaluateReturnsFalse(self): - self.assertTrue(pymonkey.evaluate('false', '<string>', 1) is False) + self.assertTrue(self._evaljs('false') is False) def testEvaluateReturnsNone(self): - self.assertTrue(pymonkey.evaluate('null', '<string>', 1) is None) + self.assertTrue(self._evaljs('null') is None) def testEvaluateReturnsIntegers(self): - self.assertEqual(pymonkey.evaluate('1+3', '<string>', 1), - 4) + self.assertEqual(self._evaljs('1+3'), 4) def testEvaluateReturnsFloats(self): - self.assertEqual(pymonkey.evaluate('1.1+3', '<string>', 1), - 4.1) + self.assertEqual(self._evaljs('1.1+3'), 4.1) if __name__ == '__main__': unittest.main()