File: test_kernel.py

package info (click to toggle)
ipython 0.13.1-2%2Bdeb7u1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 15,752 kB
  • sloc: python: 69,537; makefile: 355; lisp: 272; sh: 80; objc: 37
file content (63 lines) | stat: -rw-r--r-- 2,211 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
"""Tests for kernel utility functions

Authors
-------
* MinRK
"""
#-----------------------------------------------------------------------------
# Copyright (c) 2011, the IPython Development Team.
#
# Distributed under the terms of the Modified BSD License.
#
# The full license is in the file COPYING.txt, distributed with this software.
#-----------------------------------------------------------------------------

#-----------------------------------------------------------------------------
# Imports
#-----------------------------------------------------------------------------

# Stdlib imports
from unittest import TestCase

# Third-party imports
import nose.tools as nt

# Our own imports
from IPython.testing import decorators as dec
from IPython.lib import kernel

#-----------------------------------------------------------------------------
# Classes and functions
#-----------------------------------------------------------------------------

@dec.parametric
def test_swallow_argv():
    tests = [
        # expected  , argv       , aliases, flags
        (['-a', '5'], ['-a', '5'], None, None),
        (['5'], ['-a', '5'], None, ['a']),
        ([], ['-a', '5'], ['a'], None),
        ([], ['-a', '5'], ['a'], ['a']),
        ([], ['--foo'], None, ['foo']),
        (['--foo'], ['--foo'], ['foobar'], []),
        ([], ['--foo', '5'], ['foo'], []),
        ([], ['--foo=5'], ['foo'], []),
        (['--foo=5'], ['--foo=5'], [], ['foo']),
        (['5'], ['--foo', '5'], [], ['foo']),
        (['bar'], ['--foo', '5', 'bar'], ['foo'], ['foo']),
        (['bar'], ['--foo=5', 'bar'], ['foo'], ['foo']),
        (['5','bar'], ['--foo', '5', 'bar'], None, ['foo']),
        (['bar'], ['--foo', '5', 'bar'], ['foo'], None),
        (['bar'], ['--foo=5', 'bar'], ['foo'], None),
    ]
    for expected, argv, aliases, flags in tests:
        stripped = kernel.swallow_argv(argv, aliases=aliases, flags=flags)
        message = '\n'.join(['',
            "argv: %r" % argv,
            "aliases: %r" % aliases,
            "flags : %r" % flags,
            "expected : %r" % expected,
            "returned : %r" % stripped,
        ])
        yield nt.assert_equal(expected, stripped, message)