Move testing code into "if __name__ == '__main__'" so it's not run on import.
diff --git a/Lib/hotshot/stones.py b/Lib/hotshot/stones.py
index e171fbc..cd4c51d 100644
--- a/Lib/hotshot/stones.py
+++ b/Lib/hotshot/stones.py
@@ -5,27 +5,27 @@
 import sys
 import test.pystone
 
+def main(logfile):
+    p = hotshot.Profile(logfile)
+    benchtime, stones = p.runcall(test.pystone.pystones)
+    p.close()
 
-if sys.argv[1:]:
-    logfile = sys.argv[1]
-else:
-    import tempfile
-    logf = tempfile.NamedTemporaryFile()
-    logfile = logf.name
+    print "Pystone(%s) time for %d passes = %g" % \
+          (test.pystone.__version__, test.pystone.LOOPS, benchtime)
+    print "This machine benchmarks at %g pystones/second" % stones
 
-p = hotshot.Profile(logfile)
-benchtime, stones = p.runcall(test.pystone.pystones)
-p.close()
+    stats = hotshot.stats.load(logfile)
+    stats.strip_dirs()
+    stats.sort_stats('time', 'calls')
+    try:
+        stats.print_stats(20)
+    except IOError, e:
+        if e.errno != errno.EPIPE:
+            raise
 
-print "Pystone(%s) time for %d passes = %g" % \
-      (test.pystone.__version__, test.pystone.LOOPS, benchtime)
-print "This machine benchmarks at %g pystones/second" % stones
-
-stats = hotshot.stats.load(logfile)
-stats.strip_dirs()
-stats.sort_stats('time', 'calls')
-try:
-    stats.print_stats(20)
-except IOError, e:
-    if e.errno != errno.EPIPE:
-        raise
+if __name__ == '__main__':
+    if sys.argv[1:]:
+        main(sys.argv[1])
+    else:
+        import tempfile
+        main(tempfile.NamedTemporaryFile().name)