Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | # -*- coding: iso-8859-1 -*- |
2 | import unittest | |
3 | import os, sys | |
4 | import shlex | |
5 | ||
6 | from test import test_support | |
7 | ||
8 | try: | |
9 | from cStringIO import StringIO | |
10 | except ImportError: | |
11 | from StringIO import StringIO | |
12 | ||
13 | ||
14 | # The original test data set was from shellwords, by Hartmut Goebel. | |
15 | ||
16 | data = r"""x|x| | |
17 | foo bar|foo|bar| | |
18 | foo bar|foo|bar| | |
19 | foo bar |foo|bar| | |
20 | foo bar bla fasel|foo|bar|bla|fasel| | |
21 | x y z xxxx|x|y|z|xxxx| | |
22 | \x bar|\|x|bar| | |
23 | \ x bar|\|x|bar| | |
24 | \ bar|\|bar| | |
25 | foo \x bar|foo|\|x|bar| | |
26 | foo \ x bar|foo|\|x|bar| | |
27 | foo \ bar|foo|\|bar| | |
28 | foo "bar" bla|foo|"bar"|bla| | |
29 | "foo" "bar" "bla"|"foo"|"bar"|"bla"| | |
30 | "foo" bar "bla"|"foo"|bar|"bla"| | |
31 | "foo" bar bla|"foo"|bar|bla| | |
32 | foo 'bar' bla|foo|'bar'|bla| | |
33 | 'foo' 'bar' 'bla'|'foo'|'bar'|'bla'| | |
34 | 'foo' bar 'bla'|'foo'|bar|'bla'| | |
35 | 'foo' bar bla|'foo'|bar|bla| | |
36 | blurb foo"bar"bar"fasel" baz|blurb|foo"bar"bar"fasel"|baz| | |
37 | blurb foo'bar'bar'fasel' baz|blurb|foo'bar'bar'fasel'|baz| | |
38 | ""|""| | |
39 | ''|''| | |
40 | foo "" bar|foo|""|bar| | |
41 | foo '' bar|foo|''|bar| | |
42 | foo "" "" "" bar|foo|""|""|""|bar| | |
43 | foo '' '' '' bar|foo|''|''|''|bar| | |
44 | \""|\|""| | |
45 | "\"|"\"| | |
46 | "foo\ bar"|"foo\ bar"| | |
47 | "foo\\ bar"|"foo\\ bar"| | |
48 | "foo\\ bar\"|"foo\\ bar\"| | |
49 | "foo\\" bar\""|"foo\\"|bar|\|""| | |
50 | "foo\\ bar\" dfadf"|"foo\\ bar\"|dfadf"| | |
51 | "foo\\\ bar\" dfadf"|"foo\\\ bar\"|dfadf"| | |
52 | "foo\\\x bar\" dfadf"|"foo\\\x bar\"|dfadf"| | |
53 | "foo\x bar\" dfadf"|"foo\x bar\"|dfadf"| | |
54 | \''|\|''| | |
55 | 'foo\ bar'|'foo\ bar'| | |
56 | 'foo\\ bar'|'foo\\ bar'| | |
57 | "foo\\\x bar\" df'a\ 'df'|"foo\\\x bar\"|df'a|\|'df'| | |
58 | \"foo"|\|"foo"| | |
59 | \"foo"\x|\|"foo"|\|x| | |
60 | "foo\x"|"foo\x"| | |
61 | "foo\ "|"foo\ "| | |
62 | foo\ xx|foo|\|xx| | |
63 | foo\ x\x|foo|\|x|\|x| | |
64 | foo\ x\x\""|foo|\|x|\|x|\|""| | |
65 | "foo\ x\x"|"foo\ x\x"| | |
66 | "foo\ x\x\\"|"foo\ x\x\\"| | |
67 | "foo\ x\x\\""foobar"|"foo\ x\x\\"|"foobar"| | |
68 | "foo\ x\x\\"\''"foobar"|"foo\ x\x\\"|\|''|"foobar"| | |
69 | "foo\ x\x\\"\'"fo'obar"|"foo\ x\x\\"|\|'"fo'|obar"| | |
70 | "foo\ x\x\\"\'"fo'obar" 'don'\''t'|"foo\ x\x\\"|\|'"fo'|obar"|'don'|\|''|t'| | |
71 | 'foo\ bar'|'foo\ bar'| | |
72 | 'foo\\ bar'|'foo\\ bar'| | |
73 | foo\ bar|foo|\|bar| | |
74 | foo#bar\nbaz|foobaz| | |
75 | :-) ;-)|:|-|)|;|-|)| | |
76 |