|
From: <as...@us...> - 2009-12-11 00:59:37
|
Revision: 8020
http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8020&view=rev
Author: astraw
Date: 2009-12-11 00:59:25 +0000 (Fri, 11 Dec 2009)
Log Message:
-----------
tests: add tests for rec2csv and csv2rec
Modified Paths:
--------------
trunk/matplotlib/lib/matplotlib/tests/test_mlab.py
Modified: trunk/matplotlib/lib/matplotlib/tests/test_mlab.py
===================================================================
--- trunk/matplotlib/lib/matplotlib/tests/test_mlab.py 2009-12-10 23:32:41 UTC (rev 8019)
+++ trunk/matplotlib/lib/matplotlib/tests/test_mlab.py 2009-12-11 00:59:25 UTC (rev 8020)
@@ -1,5 +1,7 @@
import numpy as np
import matplotlib.mlab as mlab
+import tempfile
+from nose.tools import raises
def test_colinear_pca():
a = mlab.PCA._get_colinear()
@@ -8,3 +10,25 @@
assert(np.allclose(pca.fracs[2:], 0.))
assert(np.allclose(pca.Y[:,2:], 0.))
+def test_recarray_csv_roundtrip():
+ expected = np.recarray((99,),
+ [('x',np.float),('y',np.float),('t',np.float)])
+ expected['x'][0] = 1
+ expected['y'][1] = 2
+ expected['t'][2] = 3
+ fd = tempfile.TemporaryFile(suffix='csv')
+ mlab.rec2csv(expected,fd)
+ fd.seek(0)
+ actual = mlab.csv2rec(fd)
+ fd.close()
+ assert np.allclose( expected['x'], actual['x'] )
+ assert np.allclose( expected['y'], actual['y'] )
+ assert np.allclose( expected['t'], actual['t'] )
+
+@raises(ValueError)
+def test_rec2csv_bad_shape():
+ bad = np.recarray((99,4),[('x',np.float),('y',np.float)])
+ fd = tempfile.TemporaryFile(suffix='csv')
+
+ # the bad recarray should trigger a ValueError for having ndim > 1.
+ mlab.rec2csv(bad,fd)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|