awips2/pythonPackages/werkzeug/tests/contrib/test_iterio.py
root 9bb8decbcf Initial revision of AWIPS2 11.9.0-7p5
Former-commit-id: 133dc97f67 [formerly a02aeb236c] [formerly 9f19e3f712] [formerly 06a8b51d6d [formerly 9f19e3f712 [formerly 64fa9254b946eae7e61bbc3f513b7c3696c4f54f]]]
Former-commit-id: 06a8b51d6d
Former-commit-id: 377dcd10b9 [formerly 3360eb6c5f]
Former-commit-id: 8e80217e59
2012-01-06 08:55:05 -06:00

38 lines
1,020 B
Python
Executable file

from nose.tools import assert_raises
from werkzeug.contrib.iterio import IterIO
def test_itero():
"""Test the IterIO"""
iterable = iter(["Hello", "World", "1", "2", "3"])
io = IterIO(iterable)
assert io.tell() == 0
assert io.read(2) == "He"
assert io.tell() == 2
assert io.read(3) == "llo"
assert io.tell() == 5
io.seek(0)
assert io.read(5) == "Hello"
assert io.tell() == 5
assert io._buf == "Hello"
assert io.read() == "World123"
assert io.tell() == 13
io.close()
assert io.closed
io = IterIO(iter(["Hello\n", "World!"]))
assert io.readline() == 'Hello\n'
assert io._buf == 'Hello\n'
assert io.read() == 'World!'
assert io._buf == 'Hello\nWorld!'
assert io.tell() == 12
io.seek(0)
assert io.readlines() == ['Hello\n', 'World!']
io = IterIO(iter(["foo\n", "bar"]))
io.seek(-4, 2)
assert io.read(4) == '\nbar'
assert_raises(IOError, io.seek, 2, 100)
io.close()
assert_raises(ValueError, io.read)