File: test_splitinput.py

package info (click to toggle)
ipython 2.3.0-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 28,032 kB
  • ctags: 15,433
  • sloc: python: 73,792; makefile: 428; sh: 297
file content (42 lines) | stat: -rw-r--r-- 1,407 bytes parent folder | download | duplicates (5)
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
# coding: utf-8
import nose.tools as nt

from IPython.core.splitinput import split_user_input, LineInfo
from IPython.testing import tools as tt
from IPython.utils import py3compat

tests = [
    ('x=1', ('', '', 'x', '=1')),
    ('?', ('', '?', '', '')),
    ('??', ('', '??', '', '')),
    (' ?', (' ', '?', '', '')),
    (' ??', (' ', '??', '', '')),
    ('??x', ('', '??', 'x', '')),
    ('?x=1', ('', '?', 'x', '=1')),
    ('!ls', ('', '!', 'ls', '')),
    ('  !ls', ('  ', '!', 'ls', '')),
    ('!!ls', ('', '!!', 'ls', '')),
    ('  !!ls', ('  ', '!!', 'ls', '')),
    (',ls', ('', ',', 'ls', '')),
    (';ls', ('', ';', 'ls', '')),
    ('  ;ls', ('  ', ';', 'ls', '')),
    ('f.g(x)',  ('', '', 'f.g', '(x)')),
    ('f.g (x)', ('', '', 'f.g', '(x)')),
    ('?%hist1', ('', '?', '%hist1', '')),
    ('?%%hist2', ('', '?', '%%hist2', '')),
    ('??%hist3', ('', '??', '%hist3', '')),
    ('??%%hist4', ('', '??', '%%hist4', '')),
    ('?x*', ('', '?', 'x*', '')),
    ]
if py3compat.PY3:
    tests.append((u"Pérez Fernando", (u'', u'', u'Pérez', u'Fernando')))
else:
    tests.append((u"Pérez Fernando", (u'', u'', u'P', u'érez Fernando')))

def test_split_user_input():
    return tt.check_pairs(split_user_input, tests)

def test_LineInfo():
    """Simple test for LineInfo construction and str()"""
    linfo = LineInfo('  %cd /home')
    nt.assert_equal(str(linfo), 'LineInfo [  |%|cd|/home]')