| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | from __future__ import unicode_literalsfrom __future__ import absolute_importfrom fig.cli.utils import split_bufferfrom .. import unittestclass SplitBufferTest(unittest.TestCase):    def test_single_line_chunks(self):        def reader():            yield b'abc\n'            yield b'def\n'            yield b'ghi\n'        self.assert_produces(reader, [b'abc\n', b'def\n', b'ghi\n'])    def test_no_end_separator(self):        def reader():            yield b'abc\n'            yield b'def\n'            yield b'ghi'        self.assert_produces(reader, [b'abc\n', b'def\n', b'ghi'])    def test_multiple_line_chunk(self):        def reader():            yield b'abc\ndef\nghi'        self.assert_produces(reader, [b'abc\n', b'def\n', b'ghi'])    def test_chunked_line(self):        def reader():            yield b'a'            yield b'b'            yield b'c'            yield b'\n'            yield b'd'        self.assert_produces(reader, [b'abc\n', b'd'])    def test_preserves_unicode_sequences_within_lines(self):        string = u"a\u2022c\n".encode('utf-8')        def reader():            yield string        self.assert_produces(reader, [string])    def assert_produces(self, reader, expectations):        split = split_buffer(reader(), b'\n')        for (actual, expected) in zip(split, expectations):            self.assertEqual(type(actual), type(expected))            self.assertEqual(actual, expected)
 |