Revision: 559 http://rpy.svn.sourceforge.net/rpy/?rev=559&view=rev Author: lgautier Date: 2008-06-09 22:02:04 -0700 (Mon, 09 Jun 2008)
Log Message: ----------- robjects: - tentative fix of __str__ for win32 (use temp files instead of fifo) Modified Paths: -------------- branches/rpy_nextgen/rpy/robjects/__init__.py branches/rpy_nextgen/rpy/robjects/tests/testRObject.py Modified: branches/rpy_nextgen/rpy/robjects/__init__.py =================================================================== --- branches/rpy_nextgen/rpy/robjects/__init__.py 2008-06-08 20:19:00 UTC (rev 558) +++ branches/rpy_nextgen/rpy/robjects/__init__.py 2008-06-10 05:02:04 UTC (rev 559) @@ -6,7 +6,7 @@ """ -import os +import os, sys import array import rpy2.rinterface as rinterface @@ -82,12 +82,21 @@ name = None def __str__(self): - tmp = baseNameSpaceEnv["fifo"]("") + if sys.platform == 'win32': + tfile = baseNameSpaceEnv["tempfile"]() + tmp = baseNameSpaceEnv["file"](tfile) + else: + tmp = baseNameSpaceEnv["fifo"]("") baseNameSpaceEnv["sink"](tmp) r.show(self) baseNameSpaceEnv["sink"]() + if sys.platform == 'win32': + baseNameSpaceEnv["close"](tfile) s = baseNameSpaceEnv["readLines"](tmp) - r.close(tmp) + if sys.platform == 'win32': + baseNameSpaceEnv["unlink"](tfile) + else: + r.close(tmp) s = str.join(os.linesep, s) return s Modified: branches/rpy_nextgen/rpy/robjects/tests/testRObject.py =================================================================== --- branches/rpy_nextgen/rpy/robjects/tests/testRObject.py 2008-06-08 20:19:00 UTC (rev 558) +++ branches/rpy_nextgen/rpy/robjects/tests/testRObject.py 2008-06-10 05:02:04 UTC (rev 559) @@ -19,9 +19,17 @@ self.assertEquals(rinterface.INTSXP, ro_v.typeof()) def testRepr(self): - prt = rinterface.baseNameSpaceEnv["print"] + prt = robjects.baseNameSpaceEnv["pi"] s = prt.__repr__() + #import pdb; pdb.set_trace() + self.assertTrue(s.startswith('3.14')) + def testStr(self): + prt = robjects.baseNameSpaceEnv["pi"] + s = prt.__str__() + self.assertTrue(s.startswith('[1] 3.14')) + + def testRclass(self): self.assertEquals("character", robjects.baseNameSpaceEnv["letters"].rclass()[0]) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ rpy-list mailing list rpy-list@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/rpy-list