symbian-qemu-0.9.1-12/python-2.6.1/Lib/test/test_call.py
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     1 import unittest
       
     2 from test import test_support
       
     3 
       
     4 # The test cases here cover several paths through the function calling
       
     5 # code.  They depend on the METH_XXX flag that is used to define a C
       
     6 # function, which can't be verified from Python.  If the METH_XXX decl
       
     7 # for a C function changes, these tests may not cover the right paths.
       
     8 
       
     9 class CFunctionCalls(unittest.TestCase):
       
    10 
       
    11     def test_varargs0(self):
       
    12         self.assertRaises(TypeError, {}.has_key)
       
    13 
       
    14     def test_varargs1(self):
       
    15         {}.has_key(0)
       
    16 
       
    17     def test_varargs2(self):
       
    18         self.assertRaises(TypeError, {}.has_key, 0, 1)
       
    19 
       
    20     def test_varargs0_ext(self):
       
    21         try:
       
    22             {}.has_key(*())
       
    23         except TypeError:
       
    24             pass
       
    25 
       
    26     def test_varargs1_ext(self):
       
    27         {}.has_key(*(0,))
       
    28 
       
    29     def test_varargs2_ext(self):
       
    30         try:
       
    31             {}.has_key(*(1, 2))
       
    32         except TypeError:
       
    33             pass
       
    34         else:
       
    35             raise RuntimeError
       
    36 
       
    37     def test_varargs0_kw(self):
       
    38         self.assertRaises(TypeError, {}.has_key, x=2)
       
    39 
       
    40     def test_varargs1_kw(self):
       
    41         self.assertRaises(TypeError, {}.has_key, x=2)
       
    42 
       
    43     def test_varargs2_kw(self):
       
    44         self.assertRaises(TypeError, {}.has_key, x=2, y=2)
       
    45 
       
    46     def test_oldargs0_0(self):
       
    47         {}.keys()
       
    48 
       
    49     def test_oldargs0_1(self):
       
    50         self.assertRaises(TypeError, {}.keys, 0)
       
    51 
       
    52     def test_oldargs0_2(self):
       
    53         self.assertRaises(TypeError, {}.keys, 0, 1)
       
    54 
       
    55     def test_oldargs0_0_ext(self):
       
    56         {}.keys(*())
       
    57 
       
    58     def test_oldargs0_1_ext(self):
       
    59         try:
       
    60             {}.keys(*(0,))
       
    61         except TypeError:
       
    62             pass
       
    63         else:
       
    64             raise RuntimeError
       
    65 
       
    66     def test_oldargs0_2_ext(self):
       
    67         try:
       
    68             {}.keys(*(1, 2))
       
    69         except TypeError:
       
    70             pass
       
    71         else:
       
    72             raise RuntimeError
       
    73 
       
    74     def test_oldargs0_0_kw(self):
       
    75         try:
       
    76             {}.keys(x=2)
       
    77         except TypeError:
       
    78             pass
       
    79         else:
       
    80             raise RuntimeError
       
    81 
       
    82     def test_oldargs0_1_kw(self):
       
    83         self.assertRaises(TypeError, {}.keys, x=2)
       
    84 
       
    85     def test_oldargs0_2_kw(self):
       
    86         self.assertRaises(TypeError, {}.keys, x=2, y=2)
       
    87 
       
    88     def test_oldargs1_0(self):
       
    89         self.assertRaises(TypeError, [].count)
       
    90 
       
    91     def test_oldargs1_1(self):
       
    92         [].count(1)
       
    93 
       
    94     def test_oldargs1_2(self):
       
    95         self.assertRaises(TypeError, [].count, 1, 2)
       
    96 
       
    97     def test_oldargs1_0_ext(self):
       
    98         try:
       
    99             [].count(*())
       
   100         except TypeError:
       
   101             pass
       
   102         else:
       
   103             raise RuntimeError
       
   104 
       
   105     def test_oldargs1_1_ext(self):
       
   106         [].count(*(1,))
       
   107 
       
   108     def test_oldargs1_2_ext(self):
       
   109         try:
       
   110             [].count(*(1, 2))
       
   111         except TypeError:
       
   112             pass
       
   113         else:
       
   114             raise RuntimeError
       
   115 
       
   116     def test_oldargs1_0_kw(self):
       
   117         self.assertRaises(TypeError, [].count, x=2)
       
   118 
       
   119     def test_oldargs1_1_kw(self):
       
   120         self.assertRaises(TypeError, [].count, {}, x=2)
       
   121 
       
   122     def test_oldargs1_2_kw(self):
       
   123         self.assertRaises(TypeError, [].count, x=2, y=2)
       
   124 
       
   125 
       
   126 def test_main():
       
   127     test_support.run_unittest(CFunctionCalls)
       
   128 
       
   129 
       
   130 if __name__ == "__main__":
       
   131     test_main()