Ë
    „Ÿõfi  ã                   ób   — d Z ddlZd„ Zd„ Zd„ Zej
                  dk(  e_        d„ Zd„ Zd	„ Z	d
„ Z
y)z’Simple example using doctests.

This file just contains doctests both using plain python and IPython prompts.
All tests should be loaded by nose.
é    Nc                   ó   — y)zÖSome pure python tests...

    >>> pyfunc()
    'pyfunc'

    >>> import os

    >>> 2+3
    5

    >>> for i in range(3):
    ...     print(i, end=' ')
    ...     print(i+1, end=' ')
    ...
    0 1 1 2 2 3 
    Úpyfunc© r   ó    ú[/var/www/cvtools/html/venv/lib/python3.12/site-packages/IPython/testing/plugin/dtexample.pyr   r   
   s   € ð" r   c                   ó   — y)a6  Some ipython tests...

    In [1]: import os

    In [3]: 2+3
    Out[3]: 5

    In [26]: for i in range(3):
       ....:     print(i, end=' ')
       ....:     print(i+1, end=' ')
       ....:
    0 1 1 2 2 3


    It's OK to use '_' for the last result, but do NOT try to use IPython's
    numbered history of _NN outputs, since those won't exist under the
    doctest environment:

    In [7]: 'hi'
    Out[7]: 'hi'

    In [8]: print(repr(_))
    'hi'

    In [7]: 3+4
    Out[7]: 7

    In [8]: _+3
    Out[8]: 10

    In [9]: ipfunc()
    Out[9]: 'ipfunc'
    Úipfuncr   r   r   r   r	   r	      s   € ðD r   c                   ó   — y)zÑExamples that access the operating system work:

    In [1]: !echo hello
    hello

    In [2]: !echo hello > /tmp/foo_iptest

    In [3]: !cat /tmp/foo_iptest
    hello

    In [4]: rm -f /tmp/foo_iptest
    Nr   r   r   r   Úiposr   B   s   € ð 	r   Úntc                   ó   — y)a<  A function with some random output.

       Normal examples are verified as usual:
       >>> 1+3
       4

       But if you put '# random' in the output, it is ignored:
       >>> 1+3
       junk goes here...  # random

       >>> 1+2
       again,  anything goes #random
       if multiline, the random mark is only needed once.

       >>> 1+2
       You can also put the random marker at the end:
       # random

       >>> 1+2
       # random
       .. or at the beginning.

       More correct input is properly verified:
       >>> ranfunc()
       'ranfunc'
    Úranfuncr   r   r   r   r   r   U   s   € ð6 r   c                   ó   — y)aé  A function where we ignore the output of ALL examples.

    Examples:

      # all-random

      This mark tells the testing machinery that all subsequent examples should
      be treated as random (ignoring their output).  They are still executed,
      so if a they raise an error, it will be detected as such, but their
      output is completely ignored.

      >>> 1+3
      junk goes here...

      >>> 1+3
      klasdfj;

      >>> 1+2
      again,  anything goes
      blah...
    Nr   r   r   r   Ú
random_allr   s   s   € ð, 	r   c                   ó   — y)z¥Some ipython tests with random output.

    In [7]: 3+4
    Out[7]: 7

    In [8]: print('hello')
    world  # random

    In [9]: iprand()
    Out[9]: 'iprand'
    Úiprandr   r   r   r   r   r   ‹   s   € ð r   c                   ó   — y)z¸Some ipython tests with fully random output.

    # all-random
    
    In [7]: 1
    Out[7]: 99

    In [8]: print('hello')
    world

    In [9]: iprand_all()
    Out[9]: 'junk'
    Ú
iprand_allr   r   r   r   r   r   ™   s   € ð r   )Ú__doc__Úosr   r	   r   ÚnameÚ__skip_doctest__r   r   r   r   r   r   r   ú<module>r      sE   ðñó 
òò&"òJ	ð  Ÿ™ 4™€Ô òò<	ò0ór   