summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_buffer.py
blob: 3bede88bf96b0d97ab5e860e1ed2441d1020ea0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
"""Unit tests for buffer objects.

For now, tests just new or changed functionality.

"""

import unittest
from test import test_support

class BufferTests(unittest.TestCase):

    def test_extended_getslice(self):
        # Test extended slicing by comparing with list slicing.
        s = "".join(chr(c) for c in list(range(255, -1, -1)))
        b = buffer(s)
        indices = (0, None, 1, 3, 19, 300, -1, -2, -31, -300)
        for start in indices:
            for stop in indices:
                # Skip step 0 (invalid)
                for step in indices[1:]:
                    self.assertEqual(b[start:stop:step],
                                     s[start:stop:step])


def test_main():
    test_support.run_unittest(BufferTests)

if __name__ == "__main__":
    test_main()