Пример #1
0
def test_unblobCheck():
    data = {0: 1}
    # Unsupported version.
    with pytest.raises(NotImplementedError):
        unblobCheck("test", 1, 0, data)
    # Unexpected pushes.
    with pytest.raises(DecredError):
        unblobCheck("test", 0, 2, data)
    # No errors.
    assert unblobCheck("test", 0, 1, data) is None
Пример #2
0
    def unblob(b):
        """Satisfies the encode.Blobber API"""
        ver, d = encode.decodeBlob(b)
        unblobCheck("KDFParams", ver, len(d), {0: 5})

        params = KDFParams(salt=ByteArray(d[2]), auth=ByteArray(d[4]))

        params.kdfFunc = d[0].decode("utf-8")
        params.hashName = d[1].decode("utf-8")
        params.iterations = encode.intFromBytes(d[3])

        return params
Пример #3
0
    def unblob(b):
        """Satisfies the encode.Blobber API"""
        ver, d = encode.decodeBlob(b)
        unblobCheck("VotingServiceProvider", ver, len(d), {0: 4})

        piB = encode.extractNone(d[3])
        pi = PurchaseInfo.unblob(piB) if piB else None

        return VotingServiceProvider(
            url=d[0].decode("utf-8"),
            apiKey=d[1].decode("utf-8"),
            netName=d[2].decode("utf-8"),
            purchaseInfo=pi,
        )
Пример #4
0
    def unblob(b):
        """Satisfies the encode.Blobber API"""
        ver, d = encode.decodeBlob(b)
        unblobCheck("PurchaseInfo", ver, len(d), {0: 7})

        iFunc = encode.intFromBytes

        return PurchaseInfo(
            addr=d[0].decode("utf-8"),
            fees=encode.floatFromBytes(d[1]),
            script=ByteArray(d[2]),
            ticketAddr=d[3].decode("utf-8"),
            vBits=iFunc(d[4]),
            vBitsVer=iFunc(d[5]),
            stamp=iFunc(d[6]),
        )
Пример #5
0
 def unblob(b):
     """Satisfies the encode.Blobber API"""
     ver, d = decodeBlob(b)
     unblobCheck("Address", ver, len(d), {0: 2})
     return decodeAddress(d[1].decode(), nets.parse(d[0].decode()))