Viewing file: test_call.py (3.05 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
import unittest from test import test_support
# The test cases here cover several paths through the function calling # code. They depend on the METH_XXX flag that is used to define a C # function, which can't be verified from Python. If the METH_XXX decl # for a C function changes, these tests may not cover the right paths.
class CFunctionCalls(unittest.TestCase):
def test_varargs0(self): self.assertRaises(TypeError, {}.has_key)
def test_varargs1(self): {}.has_key(0)
def test_varargs2(self): self.assertRaises(TypeError, {}.has_key, 0, 1)
def test_varargs0_ext(self): try: {}.has_key(*()) except TypeError: pass
def test_varargs1_ext(self): {}.has_key(*(0,))
def test_varargs2_ext(self): try: {}.has_key(*(1, 2)) except TypeError: pass else: raise RuntimeError
def test_varargs0_kw(self): self.assertRaises(TypeError, {}.has_key, x=2)
def test_varargs1_kw(self): self.assertRaises(TypeError, {}.has_key, x=2)
def test_varargs2_kw(self): self.assertRaises(TypeError, {}.has_key, x=2, y=2)
def test_oldargs0_0(self): {}.keys()
def test_oldargs0_1(self): self.assertRaises(TypeError, {}.keys, 0)
def test_oldargs0_2(self): self.assertRaises(TypeError, {}.keys, 0, 1)
def test_oldargs0_0_ext(self): {}.keys(*())
def test_oldargs0_1_ext(self): try: {}.keys(*(0,)) except TypeError: pass else: raise RuntimeError
def test_oldargs0_2_ext(self): try: {}.keys(*(1, 2)) except TypeError: pass else: raise RuntimeError
def test_oldargs0_0_kw(self): try: {}.keys(x=2) except TypeError: pass else: raise RuntimeError
def test_oldargs0_1_kw(self): self.assertRaises(TypeError, {}.keys, x=2)
def test_oldargs0_2_kw(self): self.assertRaises(TypeError, {}.keys, x=2, y=2)
def test_oldargs1_0(self): self.assertRaises(TypeError, [].count)
def test_oldargs1_1(self): [].count(1)
def test_oldargs1_2(self): self.assertRaises(TypeError, [].count, 1, 2)
def test_oldargs1_0_ext(self): try: [].count(*()) except TypeError: pass else: raise RuntimeError
def test_oldargs1_1_ext(self): [].count(*(1,))
def test_oldargs1_2_ext(self): try: [].count(*(1, 2)) except TypeError: pass else: raise RuntimeError
def test_oldargs1_0_kw(self): self.assertRaises(TypeError, [].count, x=2)
def test_oldargs1_1_kw(self): self.assertRaises(TypeError, [].count, {}, x=2)
def test_oldargs1_2_kw(self): self.assertRaises(TypeError, [].count, x=2, y=2)
def test_main(): test_support.run_unittest(CFunctionCalls)
if __name__ == "__main__": test_main()
|