예제 #1
0
def test_magic():
    mgc = magic.Magic(mime=True)

    with GeneratorFile(mimed_html_generator()) as f:
        buffered = BufferedReader(f)
        file_header_bytes = buffered.peek(1024)
        assert mgc.from_buffer(file_header_bytes) == "text/html"

    with GeneratorFile(sample_generator()) as f:
        buffered = BufferedReader(f)
        file_header_bytes = buffered.peek(1024)
        assert mgc.from_buffer(file_header_bytes) == "text/plain"
예제 #2
0
def test_indexed_lengths():
    with GeneratorFile(sample_generator()) as f:
        assert f.read(6) == "thisis"
        assert f.tell() == 6

        assert f.read(5) == "atest"
        assert f.tell() == 11
예제 #3
0
def test_misindexed_lengths_2():
    with GeneratorFile(sample_generator()) as f:
        assert f.read(8) == "thisisat"
        assert f.tell() == 8

        assert f.read(1) == "e"
        assert f.tell() == 9

        assert f.read(2) == "st"
        assert f.tell() == 11

        assert f.read(2) == ""
        assert f.tell() == 11
예제 #4
0
def test_misindexed_lengths():
    with GeneratorFile(sample_generator()) as f:
        assert f.read(6) == "thisis"
        assert f.tell() == 6

        assert f.read(3) == "ate"
        assert f.tell() == 9

        assert f.read(2) == "st"
        assert f.tell() == 11

        assert f.read(2) == ""
        assert f.tell() == 11
예제 #5
0
def test_same_lengths():
    with GeneratorFile(sample_generator()) as f:
        assert f.read(4) == "this"
        assert f.tell() == 4

        assert f.read(2) == "is"
        assert f.tell() == 6

        assert f.read(1) == "a"
        assert f.tell() == 7

        assert f.read(4) == "test"
        assert f.tell() == 11
예제 #6
0
 def stream_read_file(self, path):
     return GeneratorFile(self.stream_read(path))
예제 #7
0
def test_with_bufferedreader():
    with GeneratorFile(sample_generator()) as f:
        buffered = BufferedReader(f)
        assert buffered.peek(10) == "thisisatest"
        assert buffered.read(10) == "thisisates"
예제 #8
0
def test_overly_long():
    with GeneratorFile(sample_generator()) as f:
        assert f.read(60) == "thisisatest"
        assert f.tell() == 11
예제 #9
0
def test_basic_generator():
    with GeneratorFile(sample_generator()) as f:
        assert f.tell() == 0
        assert f.read() == "thisisatest"
        assert f.tell() == len("thisisatest")