Beispiel #1
0
def test_vapor_refund_solver():

    refund_solver = RefundSolver(
        xprivate_key=_["vapor"]["wallet"]["sender"]["xprivate_key"],
        bytecode=_["vapor"]["htlc"]["bytecode"],
        path=_["vapor"]["wallet"]["sender"]["derivation"]["path"],
        account=_["vapor"]["wallet"]["sender"]["derivation"]["account"],
        change=_["vapor"]["wallet"]["sender"]["derivation"]["change"],
        address=_["vapor"]["wallet"]["sender"]["derivation"]["address"]
    )

    assert isinstance(refund_solver.solve(network=_["vapor"]["network"]), tuple)
    assert isinstance(refund_solver.witness(network=_["vapor"]["network"]), str)
Beispiel #2
0
def test_vapor_refund_signature():

    unsigned_refund_transaction_raw = _["vapor"]["refund"]["unsigned"][
        "transaction_raw"]

    refund_solver = RefundSolver(
        xprivate_key=_["vapor"]["wallet"]["sender"]["xprivate_key"],
        bytecode=_["vapor"]["htlc"]["bytecode"],
        path=_["vapor"]["wallet"]["sender"]["derivation"]["path"],
        account=_["vapor"]["wallet"]["sender"]["derivation"]["account"],
        change=_["vapor"]["wallet"]["sender"]["derivation"]["change"],
        address=_["vapor"]["wallet"]["sender"]["derivation"]["address"])

    signature = Signature(network=_["vapor"]["network"]).sign(
        transaction_raw=unsigned_refund_transaction_raw, solver=refund_solver)

    assert signature.type() == _["vapor"]["refund"]["signed"]["type"]
    assert signature.fee() == _["vapor"]["refund"]["signed"]["fee"]
    assert signature.hash() == _["vapor"]["refund"]["signed"]["hash"]
    assert signature.raw() == _["vapor"]["refund"]["signed"]["raw"]
    # assert signature.json() == _["vapor"]["refund"]["signed"]["json"]
    assert signature.transaction_raw() == clean_transaction_raw(
        transaction_raw=_["vapor"]["refund"]["signed"]["transaction_raw"])

    refund_signature = RefundSignature(network=_["vapor"]["network"]).sign(
        transaction_raw=unsigned_refund_transaction_raw, solver=refund_solver)

    assert refund_signature.type() == _["vapor"]["refund"]["signed"]["type"]
    assert refund_signature.fee() == _["vapor"]["refund"]["signed"]["fee"]
    assert refund_signature.hash() == _["vapor"]["refund"]["signed"]["hash"]
    assert refund_signature.raw() == _["vapor"]["refund"]["signed"]["raw"]
    # assert refund_signature.json() == _["vapor"]["refund"]["signed"]["json"]
    assert refund_signature.transaction_raw() == clean_transaction_raw(
        transaction_raw=_["vapor"]["refund"]["signed"]["transaction_raw"])
def test_vapor_refund_transaction():

    unsigned_refund_transaction = RefundTransaction(
        network=_["vapor"]["network"])

    unsigned_refund_transaction.build_transaction(
        address=_["vapor"]["wallet"]["sender"]["address"],
        transaction_id=_["vapor"]["transaction_id"],
        amount=(_["vapor"]["amount"]
                if _["vapor"]["unit"] == "NEU" else amount_unit_converter(
                    _["vapor"]["amount"], f"{_['vapor']['unit']}2NEU")),
        max_amount=_["vapor"]["max_amount"],
        asset=_["vapor"]["asset"],
    )

    assert unsigned_refund_transaction.type(
    ) == _["vapor"]["refund"]["unsigned"]["type"]
    assert unsigned_refund_transaction.fee(
    ) == _["vapor"]["refund"]["unsigned"]["fee"]
    assert unsigned_refund_transaction.hash(
    ) == _["vapor"]["refund"]["unsigned"]["hash"]
    assert unsigned_refund_transaction.raw(
    ) == _["vapor"]["refund"]["unsigned"]["raw"]
    # assert unsigned_refund_transaction.json() == _["vapor"]["refund"]["unsigned"]["json"]
    assert unsigned_refund_transaction.unsigned_datas(
    ) == _["vapor"]["refund"]["unsigned"]["unsigned_datas"]
    assert unsigned_refund_transaction.signatures(
    ) == _["vapor"]["refund"]["unsigned"]["signatures"]
    assert unsigned_refund_transaction.transaction_raw(
    ) == clean_transaction_raw(
        transaction_raw=_["vapor"]["refund"]["unsigned"]["transaction_raw"])

    signed_refund_transaction = unsigned_refund_transaction.sign(
        solver=RefundSolver(
            xprivate_key=_["vapor"]["wallet"]["sender"]["xprivate_key"],
            bytecode=_["vapor"]["htlc"]["bytecode"],
            path=_["vapor"]["wallet"]["sender"]["derivation"]["path"],
            account=_["vapor"]["wallet"]["sender"]["derivation"]["account"],
            change=_["vapor"]["wallet"]["sender"]["derivation"]["change"],
            address=_["vapor"]["wallet"]["sender"]["derivation"]["address"]))

    assert signed_refund_transaction.type(
    ) == _["vapor"]["refund"]["signed"]["type"]
    assert signed_refund_transaction.fee(
    ) == _["vapor"]["refund"]["signed"]["fee"]
    assert signed_refund_transaction.hash(
    ) == _["vapor"]["refund"]["signed"]["hash"]
    assert signed_refund_transaction.raw(
    ) == _["vapor"]["refund"]["signed"]["raw"]
    # assert signed_refund_transaction.json() == _["vapor"]["refund"]["signed"]["json"]
    assert signed_refund_transaction.unsigned_datas(
    ) == _["vapor"]["refund"]["signed"]["unsigned_datas"]
    assert signed_refund_transaction.signatures(
    ) == _["vapor"]["refund"]["signed"]["signatures"]
    assert signed_refund_transaction.transaction_raw(
    ) == clean_transaction_raw(
        transaction_raw=_["vapor"]["refund"]["signed"]["transaction_raw"])
def test_vapor_refund_transaction():

    unsigned_refund_transaction = RefundTransaction(
        network=_["vapor"]["network"])

    unsigned_refund_transaction.build_transaction(
        address=_["vapor"]["wallet"]["sender"]["address"],
        transaction_hash=_["vapor"]["transaction_hash"],
        asset=_["vapor"]["asset"])

    assert unsigned_refund_transaction.type(
    ) == _["vapor"]["refund"]["unsigned"]["type"]
    assert unsigned_refund_transaction.fee(
    ) == _["vapor"]["refund"]["unsigned"]["fee"]
    assert unsigned_refund_transaction.hash(
    ) == _["vapor"]["refund"]["unsigned"]["hash"]
    assert unsigned_refund_transaction.raw(
    ) == _["vapor"]["refund"]["unsigned"]["raw"]
    # assert unsigned_refund_transaction.json() == _["vapor"]["refund"]["unsigned"]["json"]
    assert unsigned_refund_transaction.unsigned_datas(
    ) == _["vapor"]["refund"]["unsigned"]["unsigned_datas"]
    assert unsigned_refund_transaction.signatures(
    ) == _["vapor"]["refund"]["unsigned"]["signatures"]
    assert unsigned_refund_transaction.transaction_raw(
    ) == clean_transaction_raw(
        transaction_raw=_["vapor"]["refund"]["unsigned"]["transaction_raw"])

    signed_refund_transaction = unsigned_refund_transaction.sign(
        solver=RefundSolver(
            xprivate_key=_["vapor"]["wallet"]["sender"]["xprivate_key"],
            bytecode=_["vapor"]["htlc"]["bytecode"],
            path=_["vapor"]["wallet"]["sender"]["derivation"]["path"],
            account=_["vapor"]["wallet"]["sender"]["derivation"]["account"],
            change=_["vapor"]["wallet"]["sender"]["derivation"]["change"],
            address=_["vapor"]["wallet"]["sender"]["derivation"]["address"]))

    assert signed_refund_transaction.type(
    ) == _["vapor"]["refund"]["signed"]["type"]
    assert signed_refund_transaction.fee(
    ) == _["vapor"]["refund"]["signed"]["fee"]
    assert signed_refund_transaction.hash(
    ) == _["vapor"]["refund"]["signed"]["hash"]
    assert signed_refund_transaction.raw(
    ) == _["vapor"]["refund"]["signed"]["raw"]
    # assert signed_refund_transaction.json() == _["vapor"]["refund"]["signed"]["json"]
    assert signed_refund_transaction.unsigned_datas(
    ) == _["vapor"]["refund"]["signed"]["unsigned_datas"]
    assert signed_refund_transaction.signatures(
    ) == _["vapor"]["refund"]["signed"]["signatures"]
    assert signed_refund_transaction.transaction_raw(
    ) == clean_transaction_raw(
        transaction_raw=_["vapor"]["refund"]["signed"]["transaction_raw"])
Beispiel #5
0
print("Unsigned Refund Transaction Hash:", unsigned_refund_transaction.hash())
print("Unsigned Refund Transaction Main Raw:", unsigned_refund_transaction.raw())
# print("Unsigned Refund Transaction Json:", json.dumps(unsigned_refund_transaction.json(), indent=4))
print("Unsigned Refund Transaction Unsigned:", json.dumps(unsigned_refund_transaction.unsigned_datas(), indent=4))
print("Unsigned Refund Transaction Signatures:", json.dumps(unsigned_refund_transaction.signatures(), indent=4))
print("Unsigned Refund Transaction Type:", unsigned_refund_transaction.type())

unsigned_refund_transaction_raw: str = unsigned_refund_transaction.transaction_raw()
print("Unsigned Refund Transaction Raw:", unsigned_refund_transaction_raw)

print("=" * 10, "Signed Refund Transaction")

# Initialize refund solver
refund_solver: RefundSolver = RefundSolver(
    xprivate_key=sender_wallet.xprivate_key(),
    path=sender_wallet.path(),
    bytecode=BYTECODE
)

# Sign unsigned refund transaction
signed_refund_transaction: RefundTransaction = unsigned_refund_transaction.sign(refund_solver)

print("Signed Refund Transaction Fee:", signed_refund_transaction.fee(unit="NEU"), "NEU")
print("Signed Refund Transaction Hash:", signed_refund_transaction.hash())
print("Signed Refund Transaction Main Raw:", signed_refund_transaction.raw())
# print("Signed Refund Transaction Json:", json.dumps(signed_refund_transaction.json(), indent=4))
print("Signed Refund Transaction Unsigned Datas:", json.dumps(signed_refund_transaction.unsigned_datas(), indent=4))
print("Signed Refund Transaction Signatures:", json.dumps(signed_refund_transaction.signatures(), indent=4))
print("Signed Refund Transaction Type:", signed_refund_transaction.type())

signed_refund_transaction_raw: str = signed_refund_transaction.transaction_raw()