Revision: 6268
http://matplotlib.svn.sourceforge.net/matplotlib/?rev=6268&view=rev
Author: fer_perez
Date: 2008-10-19 07:38:45 +0000 (Sun, 19 Oct 2008)
Log Message:
-----------
py4science: tools cleanup
Added Paths:
-----------
trunk/py4science/tools/workshop_checklist.py
Removed Paths:
-------------
trunk/py4science/classes/workshop_checklist.py
trunk/py4science/tools/course_checklist.py
trunk/py4science/tools/course_checklist_umich.py
Deleted: trunk/py4science/classes/workshop_checklist.py
===================================================================
--- trunk/py4science/classes/workshop_checklist.py 2008-10-19 07:36:39 UTC
(rev 6267)
+++ trunk/py4science/classes/workshop_checklist.py 2008-10-19 07:38:45 UTC
(rev 6268)
@@ -1,178 +0,0 @@
-#!/usr/bin/env python
-"""Minimal test script to check for modules needed in python workshop.
-
-Execute this code at the command line by typing:
-
-python workshop_checklist.py
-
-If it does NOT say 'OK' at the end, copy the *entire* output of the run and
-send it to the course instructor for help.
-"""
-
-# Standard library imports
-import glob
-import os
-import platform
-import sys
-
-from StringIO import StringIO
-
-# Third-party imports
-import nose
-import nose.tools as nt
-
-##############################################################################
-# Code begins
-
-#-----------------------------------------------------------------------------
-# Generic utility functions
-def sys_info():
- """Summarize some info about the system"""
-
- print '=================='
- print 'System information'
- print '=================='
- print 'os.name :',os.name
- print 'os.uname :',os.uname()
- print 'platform :',sys.platform
- print 'platform+ :',platform.platform()
- print 'prefix :',sys.prefix
- print 'exec_prefix :',sys.exec_prefix
- print 'executable :',sys.executable
- print 'version_info :',sys.version_info
- print 'version :',sys.version
- print '=================='
-
-
-#-----------------------------------------------------------------------------
-# Tests
-
-def check_import(mname):
- "Check that the given name imports correctly"
- exec "import %s as m" % mname
-
- if mname == 'matplotlib':
- m.use('Agg')
- m.rcParams['figure.subplot.top']= 0.85
-
- try:
- vinfo = m.__version__
- except AttributeError:
- vinfo = '*no info*'
-
- print 'MOD: %s, version: %s' % (mname,vinfo)
-
-
-# Test generators are best written without docstrings, because nose can then
-# show the parameters being used.
-def test_imports():
- modules = ['setuptools',
- 'IPython',
- 'numpy','scipy','scipy.weave','scipy.io',
- 'matplotlib','pylab',
- 'nose',
- #'Cython', # disabled for now, not included in EPD Beta2
- ]
-
- for mname in modules:
- yield check_import,mname
-
-
-def test_weave():
- "Simple code compilation and execution via scipy's weave"
- from scipy import weave
-
- weave.inline('int x=1;x++;')
-
- n,m=1,2
- code="""
- int m=%s;
- return_val=m+n;
- """ % m
- val = weave.inline(code,['n'])
- nt.assert_equal(val,m+n)
-
-
-def est_numpy_all():
- "Run the entire numpy test suite"
- import numpy
- numpy.test()
-
-
-# Test generator, don't put a docstring in it
-def test_loadtxt():
- import numpy as np
- import numpy.testing as npt
-
- # Examples taken from the loadtxt docstring
- array = np.array
-
- c = StringIO("0 1\n2 3")
- a1 = np.loadtxt(c)
- a2 = np.array([[ 0., 1.],
- [ 2., 3.]])
- yield npt.assert_array_equal,a1,a2
-
- d = StringIO("M 21 72\nF 35 58")
- a1 = np.loadtxt(d, dtype={'names': ('gender', 'age', 'weight'),
- 'formats': ('S1', 'i4', 'f4')})
-
- a2 = np.array([('M', 21, 72.0), ('F', 35, 58.0)],
- dtype=[('gender', '|S1'), ('age', '<i4'), ('weight', '<f4')])
- yield npt.assert_array_equal,a1,a2
-
- c = StringIO("1,0,2\n3,0,4")
- x,y = np.loadtxt(c, delimiter=',', usecols=(0,2), unpack=True)
- yield npt.assert_array_equal,x,np.array([ 1., 3.])
- yield npt.assert_array_equal,y,np.array([ 2., 4.])
-
-
-def test_plot():
- "Simple plot generation."
- from matplotlib import pyplot as plt
- plt.figure()
- plt.plot([1,2,3])
- plt.xlabel('some numbers')
- plt.savefig('tmp_test_plot.png')
-
-
-def test_plot_math():
- "Plots with math"
- from matplotlib import pyplot as plt
- plt.figure()
- plt.plot([1,2,3],label='data')
- t=(r'And X is $\sum_{i=0}^\infty \gamma_i + \frac{\alpha^{i^2}}{\gamma}'
- r'+ \cos(2 \theta^2)$')
- plt.title(t)
- plt.legend()
- plt.grid()
- plt.savefig('tmp_test_plot_math.png')
-
-
-def cleanup_pngs():
- """Remove temporary pngs made by our plotting tests"""
-
- for f in glob.glob('tmp_test_*.png'):
- try:
- os.remove(f)
- except OSError:
- print '*** Error: could not remove file',f
-
-
-#-----------------------------------------------------------------------------
-# Main routine, executed when this file is run as a script
-#
-if __name__ == '__main__':
- print "Running tests:"
- # This call form is ipython-friendly
- nose.runmodule(argv=[__file__,'-vvs'],
- exit=False)
- print """
-***************************************************************************
- TESTS FINISHED
-***************************************************************************
-
-If the printout above did not finish in 'OK' but instead says 'FAILED', copy
-and send the *entire* output to the instructor for help.
-"""
- sys_info()
Deleted: trunk/py4science/tools/course_checklist.py
===================================================================
--- trunk/py4science/tools/course_checklist.py 2008-10-19 07:36:39 UTC (rev
6267)
+++ trunk/py4science/tools/course_checklist.py 2008-10-19 07:38:45 UTC (rev
6268)
@@ -1,15 +0,0 @@
-#!/usr/bin/env python
-"""Minimal test script to check for modules needed in python course"""
-
-modules = ['numpy','scipy','matplotlib','IPython','mayavi','pyvtk','Image',
- 'visual']
-
-for mname in modules:
- try:
- exec "import %s" % mname
- except ImportError:
- print '*** ERROR: module %s could not be imported.' % mname
- else:
- print '%s: OK' % mname
-
-print 'Also remember to check that SPE is installed.'
Deleted: trunk/py4science/tools/course_checklist_umich.py
===================================================================
--- trunk/py4science/tools/course_checklist_umich.py 2008-10-19 07:36:39 UTC
(rev 6267)
+++ trunk/py4science/tools/course_checklist_umich.py 2008-10-19 07:38:45 UTC
(rev 6268)
@@ -1,15 +0,0 @@
-#!/usr/bin/env python
-"""Minimal test script to check for modules needed in python course"""
-
-modules = ['numpy','scipy','matplotlib','IPython']
-
-
-for mname in modules:
- try:
- exec "import %s" % mname
- except ImportError:
- print '*** ERROR: module %s could not be imported.' % mname
- else:
- print '%s: OK' % mname
-
-print 'Also remember to check that SPE is installed.'
Copied: trunk/py4science/tools/workshop_checklist.py (from rev 6267,
trunk/py4science/classes/workshop_checklist.py)
===================================================================
--- trunk/py4science/tools/workshop_checklist.py
(rev 0)
+++ trunk/py4science/tools/workshop_checklist.py 2008-10-19 07:38:45 UTC
(rev 6268)
@@ -0,0 +1,178 @@
+#!/usr/bin/env python
+"""Minimal test script to check for modules needed in python workshop.
+
+Execute this code at the command line by typing:
+
+python workshop_checklist.py
+
+If it does NOT say 'OK' at the end, copy the *entire* output of the run and
+send it to the course instructor for help.
+"""
+
+# Standard library imports
+import glob
+import os
+import platform
+import sys
+
+from StringIO import StringIO
+
+# Third-party imports
+import nose
+import nose.tools as nt
+
+##############################################################################
+# Code begins
+
+#-----------------------------------------------------------------------------
+# Generic utility functions
+def sys_info():
+ """Summarize some info about the system"""
+
+ print '=================='
+ print 'System information'
+ print '=================='
+ print 'os.name :',os.name
+ print 'os.uname :',os.uname()
+ print 'platform :',sys.platform
+ print 'platform+ :',platform.platform()
+ print 'prefix :',sys.prefix
+ print 'exec_prefix :',sys.exec_prefix
+ print 'executable :',sys.executable
+ print 'version_info :',sys.version_info
+ print 'version :',sys.version
+ print '=================='
+
+
+#-----------------------------------------------------------------------------
+# Tests
+
+def check_import(mname):
+ "Check that the given name imports correctly"
+ exec "import %s as m" % mname
+
+ if mname == 'matplotlib':
+ m.use('Agg')
+ m.rcParams['figure.subplot.top']= 0.85
+
+ try:
+ vinfo = m.__version__
+ except AttributeError:
+ vinfo = '*no info*'
+
+ print 'MOD: %s, version: %s' % (mname,vinfo)
+
+
+# Test generators are best written without docstrings, because nose can then
+# show the parameters being used.
+def test_imports():
+ modules = ['setuptools',
+ 'IPython',
+ 'numpy','scipy','scipy.weave','scipy.io',
+ 'matplotlib','pylab',
+ 'nose',
+ #'Cython', # disabled for now, not included in EPD Beta2
+ ]
+
+ for mname in modules:
+ yield check_import,mname
+
+
+def test_weave():
+ "Simple code compilation and execution via scipy's weave"
+ from scipy import weave
+
+ weave.inline('int x=1;x++;')
+
+ n,m=1,2
+ code="""
+ int m=%s;
+ return_val=m+n;
+ """ % m
+ val = weave.inline(code,['n'])
+ nt.assert_equal(val,m+n)
+
+
+def est_numpy_all():
+ "Run the entire numpy test suite"
+ import numpy
+ numpy.test()
+
+
+# Test generator, don't put a docstring in it
+def test_loadtxt():
+ import numpy as np
+ import numpy.testing as npt
+
+ # Examples taken from the loadtxt docstring
+ array = np.array
+
+ c = StringIO("0 1\n2 3")
+ a1 = np.loadtxt(c)
+ a2 = np.array([[ 0., 1.],
+ [ 2., 3.]])
+ yield npt.assert_array_equal,a1,a2
+
+ d = StringIO("M 21 72\nF 35 58")
+ a1 = np.loadtxt(d, dtype={'names': ('gender', 'age', 'weight'),
+ 'formats': ('S1', 'i4', 'f4')})
+
+ a2 = np.array([('M', 21, 72.0), ('F', 35, 58.0)],
+ dtype=[('gender', '|S1'), ('age', '<i4'), ('weight', '<f4')])
+ yield npt.assert_array_equal,a1,a2
+
+ c = StringIO("1,0,2\n3,0,4")
+ x,y = np.loadtxt(c, delimiter=',', usecols=(0,2), unpack=True)
+ yield npt.assert_array_equal,x,np.array([ 1., 3.])
+ yield npt.assert_array_equal,y,np.array([ 2., 4.])
+
+
+def test_plot():
+ "Simple plot generation."
+ from matplotlib import pyplot as plt
+ plt.figure()
+ plt.plot([1,2,3])
+ plt.xlabel('some numbers')
+ plt.savefig('tmp_test_plot.png')
+
+
+def test_plot_math():
+ "Plots with math"
+ from matplotlib import pyplot as plt
+ plt.figure()
+ plt.plot([1,2,3],label='data')
+ t=(r'And X is $\sum_{i=0}^\infty \gamma_i + \frac{\alpha^{i^2}}{\gamma}'
+ r'+ \cos(2 \theta^2)$')
+ plt.title(t)
+ plt.legend()
+ plt.grid()
+ plt.savefig('tmp_test_plot_math.png')
+
+
+def cleanup_pngs():
+ """Remove temporary pngs made by our plotting tests"""
+
+ for f in glob.glob('tmp_test_*.png'):
+ try:
+ os.remove(f)
+ except OSError:
+ print '*** Error: could not remove file',f
+
+
+#-----------------------------------------------------------------------------
+# Main routine, executed when this file is run as a script
+#
+if __name__ == '__main__':
+ print "Running tests:"
+ # This call form is ipython-friendly
+ nose.runmodule(argv=[__file__,'-vvs'],
+ exit=False)
+ print """
+***************************************************************************
+ TESTS FINISHED
+***************************************************************************
+
+If the printout above did not finish in 'OK' but instead says 'FAILED', copy
+and send the *entire* output to the instructor for help.
+"""
+ sys_info()
Property changes on: trunk/py4science/tools/workshop_checklist.py
___________________________________________________________________
Added: svn:executable
+ *
Added: svn:mergeinfo
+
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Matplotlib-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins