示例#1
0
    def test_acks(self):
        calls = []

        def callback(success, msg, done):
            calls.append(msg)

        proto = MockProtocol()
        db = Mockdb()
        handler = IM.handler.ModemDbGet(db, callback)
        handler._PLM_sent = True
        handler._PLM_ACK = True

        get_first = Msg.OutAllLinkGetFirst(is_ack=True)
        get_next = Msg.OutAllLinkGetNext(is_ack=True)
        get_nak = Msg.OutAllLinkGetNext(is_ack=False)

        r = handler.msg_received(proto, get_first)
        assert r == Msg.CONTINUE

        r = handler.msg_received(proto, get_next)
        assert r == Msg.CONTINUE

        r = handler.msg_received(proto, get_nak)
        assert r == Msg.FINISHED
        assert calls == ['Database download complete']

        r = handler.msg_received(proto, "dummy")
        assert r == Msg.UNKNOWN
示例#2
0
    def test_acks(self):
        calls = []

        def callback(msg):
            calls.append(msg)

        proto = MockProtocol()
        handler = IM.handler.ModemGetDb(callback)

        get_first = Msg.OutAllLinkGetFirst(is_ack=True)
        get_next = Msg.OutAllLinkGetNext(is_ack=True)
        get_nak = Msg.OutAllLinkGetNext(is_ack=False)

        r = handler.msg_received(proto, get_first)
        assert r == Msg.CONTINUE

        r = handler.msg_received(proto, get_next)
        assert r == Msg.CONTINUE

        r = handler.msg_received(proto, get_nak)
        assert r == Msg.FINISHED
        assert calls == [None]

        r = handler.msg_received(proto, "dummy")
        assert r == Msg.UNKNOWN
    def test_out(self):
        obj = Msg.OutAllLinkGetNext()
        assert obj.fixed_msg_size == 3

        b = obj.to_bytes()
        rt = bytes([0x02, 0x6a])
        assert b == rt

        str(obj)