| Index: third_party/pexpect/tests/test_run_out_of_pty.py
 | 
| diff --git a/third_party/pexpect/tests/test_run_out_of_pty.py b/third_party/pexpect/tests/test_run_out_of_pty.py
 | 
| new file mode 100644
 | 
| index 0000000000000000000000000000000000000000..309014761dfb34ba8970a7c0551f9014f089e06c
 | 
| --- /dev/null
 | 
| +++ b/third_party/pexpect/tests/test_run_out_of_pty.py
 | 
| @@ -0,0 +1,51 @@
 | 
| +#!/usr/bin/env python
 | 
| +'''
 | 
| +PEXPECT LICENSE
 | 
| +
 | 
| +    This license is approved by the OSI and FSF as GPL-compatible.
 | 
| +        http://opensource.org/licenses/isc-license.txt
 | 
| +
 | 
| +    Copyright (c) 2012, Noah Spurrier <noah@noah.org>
 | 
| +    PERMISSION TO USE, COPY, MODIFY, AND/OR DISTRIBUTE THIS SOFTWARE FOR ANY
 | 
| +    PURPOSE WITH OR WITHOUT FEE IS HEREBY GRANTED, PROVIDED THAT THE ABOVE
 | 
| +    COPYRIGHT NOTICE AND THIS PERMISSION NOTICE APPEAR IN ALL COPIES.
 | 
| +    THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 | 
| +    WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 | 
| +    MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 | 
| +    ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 | 
| +    WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 | 
| +    ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 | 
| +    OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 | 
| +
 | 
| +'''
 | 
| +import pexpect
 | 
| +import unittest
 | 
| +from . import PexpectTestCase
 | 
| +
 | 
| +class ExpectTestCase(PexpectTestCase.PexpectTestCase):
 | 
| +    # This takes too long to run and isn't all that interesting of a test.
 | 
| +    def OFF_test_run_out_of_pty (self):
 | 
| +        '''This assumes that the tested platform has < 10000 pty devices.
 | 
| +        This test currently does not work under Solaris.
 | 
| +        Under Solaris it runs out of file descriptors first and
 | 
| +        ld.so starts to barf:
 | 
| +            ld.so.1: pt_chmod: fatal: /usr/lib/libc.so.1: Too many open files
 | 
| +        '''
 | 
| +        plist=[]
 | 
| +        for count in range (0,10000):
 | 
| +                try:
 | 
| +                        plist.append (pexpect.spawn('ls -l'))
 | 
| +                except pexpect.ExceptionPexpect:
 | 
| +                        for c in range (0, count):
 | 
| +                            plist[c].close()
 | 
| +                        return
 | 
| +                except Exception:
 | 
| +                        err = sys.exc_info()[1]
 | 
| +                        self.fail ('Expected ExceptionPexpect. ' + str(err))
 | 
| +        self.fail ('Could not run out of pty devices. This may be OK.')
 | 
| +
 | 
| +if __name__ == '__main__':
 | 
| +    unittest.main()
 | 
| +
 | 
| +suite = unittest.makeSuite(ExpectTestCase,'test')
 | 
| +
 | 
| 
 |