Пример #1
0
 def encode(self):
     buf = ringbuffer.RingBuffer(2**16)
     pckler = Pickler(buf, protocol=-1, fix_imports=False)
     pckler.dump(self.value)
     if buf.freespace == 0:
         raise ProtocolError("Data too large.")
     return buf.read()
Пример #2
0
 def __init__(self, fo, prompt="$ ", timeout=90.0):
     if hasattr(fo, "fileno"):
         self._fo = fo
     else:
         raise ValueError(
             "Expect: first parameter should be a file-like object.")
     self.default_timeout = timeout
     self._prompt = prompt.encode("ascii")
     self._inbuf = ringbuffer.RingBuffer(4096)
Пример #3
0
 def encode(self):
     buf = ringbuffer.RingBuffer(2**16)
     for msg in self.value:
         msgdata = msg.encode()
         buf.write(_HEADER.pack(msg.TAG, len(msgdata)))
         buf.write(msgdata)
     if buf.freespace == 0:
         raise ProtocolError("Data too large for container.")
     return buf.read()
Пример #4
0
 def test_bad_create(self):
     with pytest.raises(ValueError):
         ringbuffer.RingBuffer(1000)
Пример #5
0
 def test_create(self):
     rb = ringbuffer.RingBuffer()
     assert rb is not None
Пример #6
0
def rb():
    return ringbuffer.RingBuffer(4096)
Пример #7
0
    def _debug(self, c, fsm):
        print("DEBUG FSM: c: {!s} {}".format(c, fsm.current_state), file=sys.stderr)


if __name__ == "__main__":
    DATA = b"""\r
16:07:41 TEST BEGIN: arc4random_stress\r
16:07:41 PASS #1: pthread_create(&thr[i], ((void*)0), stress, ((void*)0)) == 0\r
16:07:44 TEST END: arc4random_stress\r
*** arc4random_stress ***\r
Result:       Pass\r
Time:         00:00:03\r
Pass count:   7\r
    """
    fo = ringbuffer.RingBuffer()  # Represents a pty or socket
    fo.write(DATA)
    term = Terminal(fo)
    inp = term.read(4096)
    assert len(DATA) == len(inp)
    assert inp == DATA

    CDATA = b"""\x1b[c\x1b[32mGreen\x1b[0m\r\n\x1b[31;01mBright Red\x1b[0m\r\n"""
    fo = ringbuffer.RingBuffer()
    fo.write(CDATA)
    term = Terminal(fo)
    inp = term.read(4096)
    EXP = b'Green\r\nBright Red\r\n'
    assert inp == EXP
    assert fo.read(4096) == b'\x1b[?1;0c'