Ejemplo n.º 1
0
def test_incremental():
    p = channel.PushDataParser()
    assert list(p.get_submissions(''.encode())) == []
    assert list(p.get_submissions('5'.encode())) == []
    assert list(p.get_submissions('\n'.encode())) == []
    assert list(p.get_submissions('abc'.encode())) == []
    assert list(p.get_submissions('de'.encode())) == ['abcde']
    assert list(p.get_submissions(''.encode())) == []
Ejemplo n.º 2
0
def test_split_characters():
    p = channel.PushDataParser()
    assert list(p.get_submissions(b'1\n\xe2\x82')) == []
    assert list(p.get_submissions(b'\xac')) == ['€']
Ejemplo n.º 3
0
def test_unicode():
    p = channel.PushDataParser()
    # smile is actually 2 code units
    assert list(p.get_submissions('3\na😀'.encode())) == ['a😀']
Ejemplo n.º 4
0
def test_malformed_length():
    p = channel.PushDataParser()
    # TODO: could detect errors like these with some extra work
    assert list(p.get_submissions(
        '11\n0123456789\n5e\n"abc"'.encode())) == ['0123456789\n']
Ejemplo n.º 5
0
def test_truncated_length():
    p = channel.PushDataParser()
    assert list(p.get_submissions('13'.encode())) == []
Ejemplo n.º 6
0
def test_truncated_message():
    p = channel.PushDataParser()
    assert list(p.get_submissions('12\n012345678'.encode())) == []
Ejemplo n.º 7
0
def test_simple():
    p = channel.PushDataParser()
    assert list(p.get_submissions('10\n01234567893\nabc'.encode())) == [
        '0123456789',
        'abc',
    ]