assert decoder.decode("a\n\nb\nc\n") == ["a\n", "\n", "b\n", "c\n"]
assert decoder.flush() == []
+ # Issue #1033
+ decoder = LineDecoder()
+ assert decoder.decode("") == []
+ assert decoder.decode("12345\n") == ["12345\n"]
+ assert decoder.decode("foo ") == []
+ assert decoder.decode("bar ") == []
+ assert decoder.decode("baz\n") == ["foo bar baz\n"]
+ assert decoder.flush() == []
+
def test_line_decoder_cr():
decoder = LineDecoder()
assert decoder.decode("a\r\rb\rc\r") == ["a\n", "\n", "b\n"]
assert decoder.flush() == ["c\n"]
+ # Issue #1033
+ # TODO: This seems like another bug; fix expectations and results.
+ decoder = LineDecoder()
+ assert decoder.decode("") == []
+ assert decoder.decode("12345\r") == []
+ assert decoder.decode("foo ") == []
+ assert decoder.decode("bar ") == []
+ assert decoder.decode("baz\r") == []
+ assert decoder.flush() == ["12345\rfoo bar baz\n"]
+
def test_line_decoder_crnl():
decoder = LineDecoder()
assert decoder.decode("\n\r\nb\r\nc") == ["a\n", "\n", "b\n"]
assert decoder.flush() == ["c"]
+ # Issue #1033
+ decoder = LineDecoder()
+ assert decoder.decode("") == []
+ assert decoder.decode("12345\r\n") == ["12345\n"]
+ assert decoder.decode("foo ") == []
+ assert decoder.decode("bar ") == []
+ assert decoder.decode("baz\r\n") == ["foo bar baz\n"]
+ assert decoder.flush() == []
+
def test_invalid_content_encoding_header():
headers = [(b"Content-Encoding", b"invalid-header")]