#9163: Doctest error in expect.py on Cygwin and OS X
--------------------------+-------------------------------------------------
   Reporter:  was         |       Owner:  was                      
       Type:  defect      |      Status:  new                      
   Priority:  major       |   Milestone:  sage-4.6.1               
  Component:  interfaces  |    Keywords:  cygwin osx expect doctest
     Author:              |    Upstream:  N/A                      
   Reviewer:              |      Merged:                           
Work_issues:              |  
--------------------------+-------------------------------------------------
Changes (by jdemeyer):

  * keywords:  => cygwin osx expect doctest
  * owner:  tbd => was
  * component:  cygwin => interfaces


Old description:

> {{{
>
> sage -t  "devel/sage/sage/interfaces/expect.py"
> **********************************************************************
> File "/home/wstein/sage-4.4.3/devel/sage/sage/interfaces/expect.py", line
> 808:
>     sage: print sage0.eval("alarm(1); singular._expect_expr('1')")
> Expected:
>     Control-C pressed.  Interrupting Singular. Please wait a few
> seconds...
>     ...
>     KeyboardInterrupt: computation timed out because alarm was set for 1
> seconds
> Got:
> ---------------------------------------------------------------------------
>     KeyboardInterrupt                         Traceback (most recent call
> last)
>     <BLANKLINE>
>     /home/wstein/sage-4.4.3/data/extcode/sage/<ipython console> in
> <module>()
>     <BLANKLINE>
>     /home/wstein/sage-4.4.3/local/lib/python2.6/site-
> packages/sage/interfaces/expect.pyc in _expect_expr(self, expr, timeout)
>         815             expr = self._prompt_wait
>         816         if self._expect is None:
>     --> 817             self._start()
>         818         try:
>         819             if timeout:
>     <BLANKLINE>
>     /home/wstein/sage-4.4.3/local/lib/python2.6/site-
> packages/sage/interfaces/singular.pyc in _start(self, alt_message)
>         373         """
>         374         self.__libs = []
>     --> 375         Expect._start(self, alt_message)
>         376         # Load some standard libraries.
>         377         self.lib('general')   # assumed loaded by
> misc/constants.py
>     <BLANKLINE>
>     /home/wstein/sage-4.4.3/local/lib/python2.6/site-
> packages/sage/interfaces/expect.pyc in _start(self, alt_message,
> block_during_init)
>         447                 c = 'sage-native-execute  ssh %s "nohup sage
> -cleaner"  &'%self._server
>         448                 os.system(c)
>     --> 449             self._expect = pexpect.spawn(cmd,
> logfile=self.__logfile)
>         450             if self._do_cleaner():
>         451                 cleaner.cleaner(self._expect.pid, cmd)
>     <BLANKLINE>
>     /home/wstein/sage-4.4.3/local/lib/python2.6/site-packages/pexpect.pyc
> in __init__(self, command, args, timeout, maxread, searchwindowsize,
> logfile)
>         331
>         332         self.name = '<' + ' '.join (self.args) + '>'
>     --> 333         self.__spawn()
>         334
>         335     def __del__(self):
>     <BLANKLINE>
>     /home/wstein/sage-4.4.3/local/lib/python2.6/site-packages/pexpect.pyc
> in __spawn(self)
>         399
>         400         try:
>     --> 401             self.pid, self.child_fd = pty.fork()
>         402         except OSError, e:
>         403             raise ExceptionPexpect('Pexpect: pty.fork()
> failed: ' + str(e))
>     <BLANKLINE>
>     /home/wstein/sage-4.4.3/local/lib/python/pty.pyc in fork()
>          93
>          94     try:
>     ---> 95         pid, fd = os.forkpty()
>          96     except (AttributeError, OSError):
>          97         pass
>     <BLANKLINE>
>     /home/wstein/sage-4.4.3/local/lib/python2.6/site-
> packages/sage/misc/misc.pyc in __mysig(a, b)
>        1690 __alarm_time=0
>        1691 def __mysig(a,b):
>     -> 1692     raise KeyboardInterrupt, "computation timed out because
> alarm was set for %s seconds"%__alarm_time
>        1693
>        1694 def alarm(seconds):
>     <BLANKLINE>
>     KeyboardInterrupt: computation timed out because alarm was set for 1
> seconds
> **********************************************************************
> 1 items had failures:
>    1 of  10 in __main__.example_15
> ***Test Failed*** 1 failures.
> }}}

New description:

 On Cygwin and on OS X 10.6, the doctest {{{sage/interfaces/expect.py}}}
 fails:

 {{{
 sage -t  "devel/sage/sage/interfaces/expect.py"
 **********************************************************************
 File "/home/wstein/sage-4.4.3/devel/sage/sage/interfaces/expect.py", line
 808:
     sage: print sage0.eval("alarm(1); singular._expect_expr('1')")
 Expected:
     Control-C pressed.  Interrupting Singular. Please wait a few
 seconds...
     ...
     KeyboardInterrupt: computation timed out because alarm was set for 1
 seconds
 Got:
 ---------------------------------------------------------------------------
     KeyboardInterrupt                         Traceback (most recent call
 last)
     <BLANKLINE>
     /home/wstein/sage-4.4.3/data/extcode/sage/<ipython console> in
 <module>()
     <BLANKLINE>
     /home/wstein/sage-4.4.3/local/lib/python2.6/site-
 packages/sage/interfaces/expect.pyc in _expect_expr(self, expr, timeout)
         815             expr = self._prompt_wait
         816         if self._expect is None:
     --> 817             self._start()
         818         try:
         819             if timeout:
     <BLANKLINE>
     /home/wstein/sage-4.4.3/local/lib/python2.6/site-
 packages/sage/interfaces/singular.pyc in _start(self, alt_message)
         373         """
         374         self.__libs = []
     --> 375         Expect._start(self, alt_message)
         376         # Load some standard libraries.
         377         self.lib('general')   # assumed loaded by
 misc/constants.py
     <BLANKLINE>
     /home/wstein/sage-4.4.3/local/lib/python2.6/site-
 packages/sage/interfaces/expect.pyc in _start(self, alt_message,
 block_during_init)
         447                 c = 'sage-native-execute  ssh %s "nohup sage
 -cleaner"  &'%self._server
         448                 os.system(c)
     --> 449             self._expect = pexpect.spawn(cmd,
 logfile=self.__logfile)
         450             if self._do_cleaner():
         451                 cleaner.cleaner(self._expect.pid, cmd)
     <BLANKLINE>
     /home/wstein/sage-4.4.3/local/lib/python2.6/site-packages/pexpect.pyc
 in __init__(self, command, args, timeout, maxread, searchwindowsize,
 logfile)
         331
         332         self.name = '<' + ' '.join (self.args) + '>'
     --> 333         self.__spawn()
         334
         335     def __del__(self):
     <BLANKLINE>
     /home/wstein/sage-4.4.3/local/lib/python2.6/site-packages/pexpect.pyc
 in __spawn(self)
         399
         400         try:
     --> 401             self.pid, self.child_fd = pty.fork()
         402         except OSError, e:
         403             raise ExceptionPexpect('Pexpect: pty.fork()
 failed: ' + str(e))
     <BLANKLINE>
     /home/wstein/sage-4.4.3/local/lib/python/pty.pyc in fork()
          93
          94     try:
     ---> 95         pid, fd = os.forkpty()
          96     except (AttributeError, OSError):
          97         pass
     <BLANKLINE>
     /home/wstein/sage-4.4.3/local/lib/python2.6/site-
 packages/sage/misc/misc.pyc in __mysig(a, b)
        1690 __alarm_time=0
        1691 def __mysig(a,b):
     -> 1692     raise KeyboardInterrupt, "computation timed out because
 alarm was set for %s seconds"%__alarm_time
        1693
        1694 def alarm(seconds):
     <BLANKLINE>
     KeyboardInterrupt: computation timed out because alarm was set for 1
 seconds
 **********************************************************************
 1 items had failures:
    1 of  10 in __main__.example_15
 ***Test Failed*** 1 failures.
 }}}

--

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9163#comment:1>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to