示例#1
0
def test_lowlevel():
    """Lowlevel formparser tests"""
    assert formparser._line_parse('foo') == ('foo', False)
    assert formparser._line_parse('foo\r\n') == ('foo', True)
    assert formparser._line_parse('foo\r') == ('foo', True)
    assert formparser._line_parse('foo\n') == ('foo', True)

    lineiter = iter('\n\n\nfoo\nbar\nbaz'.splitlines(True))
    line = formparser._find_terminator(lineiter)
    assert line == 'foo'
    assert list(lineiter) == ['bar\n', 'baz']
    assert formparser._find_terminator([]) == ''
    assert formparser._find_terminator(['']) == ''

    assert_raises(ValueError, formparser.parse_multipart, None, '', 20)
    assert_raises(ValueError, formparser.parse_multipart, None, 'broken  ', 20)

    data = '--foo\r\n\r\nHello World\r\n--foo--'
    assert_raises(ValueError, formparser.parse_multipart, StringIO(data), 'foo', len(data))

    data = '--foo\r\nContent-Disposition: form-field; name=foo\r\n' \
           'Content-Transfer-Encoding: base64\r\n\r\nHello World\r\n--foo--'
    assert_raises(ValueError, formparser.parse_multipart, StringIO(data), 'foo', len(data))

    data = '--foo\r\nContent-Disposition: form-field; name=foo\r\n\r\nHello World\r\n'
    assert_raises(ValueError, formparser.parse_multipart, StringIO(data), 'foo', len(data))

    x = formparser.parse_multipart_headers(['foo: bar\r\n', ' x test\r\n'])
    assert x['foo'] == 'bar\n x test'
    assert_raises(ValueError, formparser.parse_multipart_headers, ['foo: bar\r\n', ' x test'])
示例#2
0
def test_lowlevel():
    """Lowlevel formparser tests"""
    assert formparser._line_parse("foo") == ("foo", False)
    assert formparser._line_parse("foo\r\n") == ("foo", True)
    assert formparser._line_parse("foo\r") == ("foo", True)
    assert formparser._line_parse("foo\n") == ("foo", True)

    lineiter = iter("\n\n\nfoo\nbar\nbaz".splitlines(True))
    line = formparser._find_terminator(lineiter)
    assert line == "foo"
    assert list(lineiter) == ["bar\n", "baz"]
    assert formparser._find_terminator([]) == ""
    assert formparser._find_terminator([""]) == ""

    assert_raises(ValueError, formparser.parse_multipart, None, "", 20)
    assert_raises(ValueError, formparser.parse_multipart, None, "broken  ", 20)

    data = "--foo\r\n\r\nHello World\r\n--foo--"
    assert_raises(ValueError, formparser.parse_multipart, StringIO(data), "foo", len(data))

    data = (
        "--foo\r\nContent-Disposition: form-field; name=foo\r\n"
        "Content-Transfer-Encoding: base64\r\n\r\nHello World\r\n--foo--"
    )
    assert_raises(ValueError, formparser.parse_multipart, StringIO(data), "foo", len(data))

    data = "--foo\r\nContent-Disposition: form-field; name=foo\r\n\r\nHello World\r\n"
    assert_raises(ValueError, formparser.parse_multipart, StringIO(data), "foo", len(data))

    x = formparser.parse_multipart_headers(["foo: bar\r\n", " x test\r\n"])
    assert x["foo"] == "bar\n x test"
    assert_raises(ValueError, formparser.parse_multipart_headers, ["foo: bar\r\n", " x test"])
示例#3
0
def test_lowlevel():
    """Lowlevel formparser tests"""
    assert formparser._line_parse('foo') == ('foo', False)
    assert formparser._line_parse('foo\r\n') == ('foo', True)
    assert formparser._line_parse('foo\r') == ('foo', True)
    assert formparser._line_parse('foo\n') == ('foo', True)

    lineiter = iter('\n\n\nfoo\nbar\nbaz'.splitlines(True))
    line = formparser._find_terminator(lineiter)
    assert line == 'foo'
    assert list(lineiter) == ['bar\n', 'baz']
    assert formparser._find_terminator([]) == ''
    assert formparser._find_terminator(['']) == ''

    assert_raises(ValueError, formparser.parse_multipart, None, '', 20)
    assert_raises(ValueError, formparser.parse_multipart, None, 'broken  ', 20)

    data = '--foo\r\n\r\nHello World\r\n--foo--'
    assert_raises(ValueError, formparser.parse_multipart, StringIO(data),
                  'foo', len(data))

    data = '--foo\r\nContent-Disposition: form-field; name=foo\r\n' \
           'Content-Transfer-Encoding: base64\r\n\r\nHello World\r\n--foo--'
    assert_raises(ValueError, formparser.parse_multipart, StringIO(data),
                  'foo', len(data))

    data = '--foo\r\nContent-Disposition: form-field; name=foo\r\n\r\nHello World\r\n'
    assert_raises(ValueError, formparser.parse_multipart, StringIO(data),
                  'foo', len(data))

    x = formparser.parse_multipart_headers(['foo: bar\r\n', ' x test\r\n'])
    assert x['foo'] == 'bar\n x test'
    assert_raises(ValueError, formparser.parse_multipart_headers,
                  ['foo: bar\r\n', ' x test'])
示例#4
0
 def test_line_parser(self):
     assert formparser._line_parse('foo') == ('foo', False)
     assert formparser._line_parse('foo\r\n') == ('foo', True)
     assert formparser._line_parse('foo\r') == ('foo', True)
     assert formparser._line_parse('foo\n') == ('foo', True)
示例#5
0
 def test_line_parser(self):
     assert formparser._line_parse('foo') == ('foo', False)
     assert formparser._line_parse('foo\r\n') == ('foo', True)
     assert formparser._line_parse('foo\r') == ('foo', True)
     assert formparser._line_parse('foo\n') == ('foo', True)
示例#6
0
 def test_line_parser(self):
     assert formparser._line_parse("foo") == ("foo", False)
     assert formparser._line_parse("foo\r\n") == ("foo", True)
     assert formparser._line_parse("foo\r") == ("foo", True)
     assert formparser._line_parse("foo\n") == ("foo", True)
示例#7
0
 def test_lien_parser(self):
     assert formparser._line_parse("foo") == ("foo", False)
     assert formparser._line_parse("foo\r\n") == ("foo", True)
     assert formparser._line_parse("foo\r") == ("foo", True)
     assert formparser._line_parse("foo\n") == ("foo", True)