/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to breezy/tests/test__chunks_to_lines.py

  • Committer: Breezy landing bot
  • Author(s): Martin
  • Date: 2017-06-11 01:56:34 UTC
  • mfrom: (6684.1.5 py3_bootstrap2)
  • Revision ID: breezy.the.bot@gmail.com-20170611015634-9eeh86thh073hcko
More progress towards Python 3 support

Merged from https://code.launchpad.net/~gz/brz/py3_bootstrap2/+merge/325452

Show diffs side-by-side

added added

removed removed

Lines of Context:
47
47
            self.assertIs(chunks, result)
48
48
 
49
49
    def test_fulltext_chunk_to_lines(self):
50
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz\n'],
51
 
                                 ['foo\nbar\r\nba\rz\n'])
52
 
        self.assertChunksToLines(['foobarbaz\n'], ['foobarbaz\n'],
53
 
                                 alreadly_lines=True)
54
 
        self.assertChunksToLines(['foo\n', 'bar\n', '\n', 'baz\n', '\n', '\n'],
55
 
                                 ['foo\nbar\n\nbaz\n\n\n'])
56
 
        self.assertChunksToLines(['foobarbaz'], ['foobarbaz'],
57
 
                                 alreadly_lines=True)
58
 
        self.assertChunksToLines(['foobarbaz'], ['foo', 'bar', 'baz'])
 
50
        self.assertChunksToLines(
 
51
            [b'foo\n', b'bar\r\n', b'ba\rz\n'],
 
52
            [b'foo\nbar\r\nba\rz\n'])
 
53
        self.assertChunksToLines(
 
54
            [b'foobarbaz\n'], [b'foobarbaz\n'], alreadly_lines=True)
 
55
        self.assertChunksToLines(
 
56
            [b'foo\n', b'bar\n', b'\n', b'baz\n', b'\n', b'\n'],
 
57
            [b'foo\nbar\n\nbaz\n\n\n'])
 
58
        self.assertChunksToLines(
 
59
            [b'foobarbaz'], [b'foobarbaz'], alreadly_lines=True)
 
60
        self.assertChunksToLines([b'foobarbaz'], [b'foo', b'bar', b'baz'])
59
61
 
60
62
    def test_newlines(self):
61
 
        self.assertChunksToLines(['\n'], ['\n'], alreadly_lines=True)
62
 
        self.assertChunksToLines(['\n'], ['', '\n', ''])
63
 
        self.assertChunksToLines(['\n'], ['\n', ''])
64
 
        self.assertChunksToLines(['\n'], ['', '\n'])
65
 
        self.assertChunksToLines(['\n', '\n', '\n'], ['\n\n\n'])
66
 
        self.assertChunksToLines(['\n', '\n', '\n'], ['\n', '\n', '\n'],
 
63
        self.assertChunksToLines([b'\n'], [b'\n'], alreadly_lines=True)
 
64
        self.assertChunksToLines([b'\n'], [b'', b'\n', b''])
 
65
        self.assertChunksToLines([b'\n'], [b'\n', b''])
 
66
        self.assertChunksToLines([b'\n'], [b'', b'\n'])
 
67
        self.assertChunksToLines([b'\n', b'\n', b'\n'], [b'\n\n\n'])
 
68
        self.assertChunksToLines([b'\n', b'\n', b'\n'], [b'\n', b'\n', b'\n'],
67
69
                                 alreadly_lines=True)
68
70
 
69
71
    def test_lines_to_lines(self):
70
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz\n'],
71
 
                                 ['foo\n', 'bar\r\n', 'ba\rz\n'],
 
72
        self.assertChunksToLines([b'foo\n', b'bar\r\n', b'ba\rz\n'],
 
73
                                 [b'foo\n', b'bar\r\n', b'ba\rz\n'],
72
74
                                 alreadly_lines=True)
73
75
 
74
76
    def test_no_final_newline(self):
75
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz'],
76
 
                                 ['foo\nbar\r\nba\rz'])
77
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz'],
78
 
                                 ['foo\n', 'bar\r\n', 'ba\rz'],
 
77
        self.assertChunksToLines([b'foo\n', b'bar\r\n', b'ba\rz'],
 
78
                                 [b'foo\nbar\r\nba\rz'])
 
79
        self.assertChunksToLines([b'foo\n', b'bar\r\n', b'ba\rz'],
 
80
                                 [b'foo\n', b'bar\r\n', b'ba\rz'],
79
81
                                 alreadly_lines=True)
80
 
        self.assertChunksToLines(('foo\n', 'bar\r\n', 'ba\rz'),
81
 
                                 ('foo\n', 'bar\r\n', 'ba\rz'),
 
82
        self.assertChunksToLines((b'foo\n', b'bar\r\n', b'ba\rz'),
 
83
                                 (b'foo\n', b'bar\r\n', b'ba\rz'),
82
84
                                 alreadly_lines=True)
83
85
        self.assertChunksToLines([], [], alreadly_lines=True)
84
 
        self.assertChunksToLines(['foobarbaz'], ['foobarbaz'],
 
86
        self.assertChunksToLines([b'foobarbaz'], [b'foobarbaz'],
85
87
                                 alreadly_lines=True)
86
 
        self.assertChunksToLines([], [''])
 
88
        self.assertChunksToLines([], [b''])
87
89
 
88
90
    def test_mixed(self):
89
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz'],
90
 
                                 ['foo\n', 'bar\r\nba\r', 'z'])
91
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz'],
92
 
                                 ['foo\nb', 'a', 'r\r\nba\r', 'z'])
93
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz'],
94
 
                                 ['foo\nbar\r\nba', '\r', 'z'])
 
91
        self.assertChunksToLines([b'foo\n', b'bar\r\n', b'ba\rz'],
 
92
                                 [b'foo\n', b'bar\r\nba\r', b'z'])
 
93
        self.assertChunksToLines([b'foo\n', b'bar\r\n', b'ba\rz'],
 
94
                                 [b'foo\nb', b'a', b'r\r\nba\r', b'z'])
 
95
        self.assertChunksToLines([b'foo\n', b'bar\r\n', b'ba\rz'],
 
96
                                 [b'foo\nbar\r\nba', b'\r', b'z'])
95
97
 
96
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz'],
97
 
                                 ['foo\n', '', 'bar\r\nba', '\r', 'z'])
98
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz\n'],
99
 
                                 ['foo\n', 'bar\r\n', 'ba\rz\n', ''])
100
 
        self.assertChunksToLines(['foo\n', 'bar\r\n', 'ba\rz\n'],
101
 
                                 ['foo\n', 'bar', '\r\n', 'ba\rz\n'])
 
98
        self.assertChunksToLines([b'foo\n', b'bar\r\n', b'ba\rz'],
 
99
                                 [b'foo\n', b'', b'bar\r\nba', b'\r', b'z'])
 
100
        self.assertChunksToLines([b'foo\n', b'bar\r\n', b'ba\rz\n'],
 
101
                                 [b'foo\n', b'bar\r\n', b'ba\rz\n', b''])
 
102
        self.assertChunksToLines([b'foo\n', b'bar\r\n', b'ba\rz\n'],
 
103
                                 [b'foo\n', b'bar', b'\r\n', b'ba\rz\n'])
102
104
 
103
105
    def test_not_lines(self):
104
106
        # We should raise a TypeError, not crash
107
109
        self.assertRaises(TypeError, self.module.chunks_to_lines,
108
110
                          [object()])
109
111
        self.assertRaises(TypeError, self.module.chunks_to_lines,
110
 
                          ['foo', object()])
 
112
                          [b'foo', object()])