[Python-checkins] r46147 - sandbox/trunk/rjsh-pybench/NewInstances.py sandbox/trunk/rjsh-pybench/Setup.py

steve.holden python-checkins at python.org
Tue May 23 21:22:03 CEST 2006


Author: steve.holden
Date: Tue May 23 21:22:03 2006
New Revision: 46147

Added:
   sandbox/trunk/rjsh-pybench/NewInstances.py   (contents, props changed)
Modified:
   sandbox/trunk/rjsh-pybench/Setup.py
Log:
Add test for new-style instance creation.


Added: sandbox/trunk/rjsh-pybench/NewInstances.py
==============================================================================
--- (empty file)
+++ sandbox/trunk/rjsh-pybench/NewInstances.py	Tue May 23 21:22:03 2006
@@ -0,0 +1,66 @@
+from pybench import Test
+
+class CreateNewInstances(Test):
+
+    version = 0.1
+    operations = 3 + 7 + 4
+    rounds = 60000
+
+    def test(self):
+
+        class c(object):
+            pass
+
+        class d(object):
+            def __init__(self,a,b,c):
+                self.a = a
+                self.b = b
+                self.c = c
+
+        class e(object):
+            def __init__(self,a,b,c=4):
+                self.a = a
+                self.b = b
+                self.c = c
+                self.d = a
+                self.e = b
+                self.f = c
+
+        for i in xrange(self.rounds):
+            o = c()
+            o1 = c()
+            o2 = c()
+            p = d(i,i,3)
+            p1 = d(i,i,3)
+            p2 = d(i,3,3)
+            p3 = d(3,i,3)
+            p4 = d(i,i,i)
+            p5 = d(3,i,3)
+            p6 = d(i,i,i)
+            q = e(i,i,3)
+            q1 = e(i,i,3)
+            q2 = e(i,i,3)
+            q3 = e(i,i)
+
+    def calibrate(self):
+
+        class c(object):
+            pass
+
+        class d(object):
+            def __init__(self,a,b,c):
+                self.a = a
+                self.b = b
+                self.c = c
+
+        class e(object):
+            def __init__(self,a,b,c=4):
+                self.a = a
+                self.b = b
+                self.c = c
+                self.d = a
+                self.e = b
+                self.f = c
+
+        for i in xrange(self.rounds):
+            pass

Modified: sandbox/trunk/rjsh-pybench/Setup.py
==============================================================================
--- sandbox/trunk/rjsh-pybench/Setup.py	(original)
+++ sandbox/trunk/rjsh-pybench/Setup.py	Tue May 23 21:22:03 2006
@@ -17,11 +17,16 @@
 Warp_factor = 20
 
 # Import tests
+#from Empty import *
 from Arithmetic import *
 from Calls import *
 from Constructs import *
 from Lookups import *
 from Instances import *
+try:
+    from NewInstances import *
+except:
+    print "Cannot test new-style objects"
 from Lists import *
 from Tuples import *
 from Dict import *


More information about the Python-checkins mailing list