PageRenderTime 11ms CodeModel.GetById 2ms app.highlight 7ms RepoModel.GetById 1ms app.codeStats 1ms

/Tools/pybench/NewInstances.py

http://unladen-swallow.googlecode.com/
Python | 75 lines | 59 code | 14 blank | 2 comment | 4 complexity | d6dcbc9352b21074e988d14593f6125b MD5 | raw file
 1from pybench import Test
 2
 3# Check for new-style class support:
 4try:
 5    class c(object):
 6        pass
 7except NameError:
 8    raise ImportError
 9
10###
11
12class CreateNewInstances(Test):
13
14    version = 2.0
15    operations = 3 + 7 + 4
16    rounds = 60000
17
18    def test(self):
19
20        class c(object):
21            pass
22
23        class d(object):
24            def __init__(self,a,b,c):
25                self.a = a
26                self.b = b
27                self.c = c
28
29        class e(object):
30            def __init__(self,a,b,c=4):
31                self.a = a
32                self.b = b
33                self.c = c
34                self.d = a
35                self.e = b
36                self.f = c
37
38        for i in xrange(self.rounds):
39            o = c()
40            o1 = c()
41            o2 = c()
42            p = d(i,i,3)
43            p1 = d(i,i,3)
44            p2 = d(i,3,3)
45            p3 = d(3,i,3)
46            p4 = d(i,i,i)
47            p5 = d(3,i,3)
48            p6 = d(i,i,i)
49            q = e(i,i,3)
50            q1 = e(i,i,3)
51            q2 = e(i,i,3)
52            q3 = e(i,i)
53
54    def calibrate(self):
55
56        class c(object):
57            pass
58
59        class d(object):
60            def __init__(self,a,b,c):
61                self.a = a
62                self.b = b
63                self.c = c
64
65        class e(object):
66            def __init__(self,a,b,c=4):
67                self.a = a
68                self.b = b
69                self.c = c
70                self.d = a
71                self.e = b
72                self.f = c
73
74        for i in xrange(self.rounds):
75            pass