summaryrefslogtreecommitdiff
path: root/tests/isolated/regular_file_readall.py
blob: 4c733febbe0b7a84472037c86746da4c75704351 (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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
__test__ = False

if __name__ == '__main__':
    import eventlet
    eventlet.monkey_patch()

    import six
    import io
    import os
    import tempfile

    with tempfile.NamedTemporaryFile() as tmp:
        with io.open(tmp.name, "wb") as fp:
            fp.write(b"content")

        # test BufferedReader.read()
        fd = os.open(tmp.name, os.O_RDONLY)
        fp = os.fdopen(fd, "rb")
        with fp:
            content = fp.read()
        assert content == b'content'

        # test FileIO.read()
        fd = os.open(tmp.name, os.O_RDONLY)
        fp = os.fdopen(fd, "rb", 0)
        with fp:
            content = fp.read()
        assert content == b'content'

        if six.PY3:
            # test FileIO.readall()
            fd = os.open(tmp.name, os.O_RDONLY)
            fp = os.fdopen(fd, "rb", 0)
            with fp:
                content = fp.readall()
            assert content == b'content'

        # test FileIO.readall() (for Python 2 and Python 3)
        with io.open(tmp.name, "rb", 0) as fp:
            content = fp.readall()
        assert content == b'content'

    print("pass")