Пример #1
0
def test_vapor_fund_solver():

    fund_solver = FundSolver(
        xprivate_key=_["vapor"]["wallet"]["sender"]["xprivate_key"],
        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(fund_solver.solve(network=_["vapor"]["network"]), tuple)
Пример #2
0
def test_vapor_fund_signature():

    unsigned_fund_transaction_raw = _["vapor"]["fund"]["unsigned"][
        "transaction_raw"]

    fund_solver = FundSolver(
        xprivate_key=_["vapor"]["wallet"]["sender"]["xprivate_key"],
        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_fund_transaction_raw, solver=fund_solver)

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

    fund_signature = FundSignature(network=_["vapor"]["network"]).sign(
        transaction_raw=unsigned_fund_transaction_raw, solver=fund_solver)

    assert fund_signature.type() == _["vapor"]["fund"]["signed"]["type"]
    assert fund_signature.fee() == _["vapor"]["fund"]["signed"]["fee"]
    assert fund_signature.hash() == _["vapor"]["fund"]["signed"]["hash"]
    assert fund_signature.raw() == _["vapor"]["fund"]["signed"]["raw"]
    # assert fund_signature.json() == _["vapor"]["fund"]["signed"]["json"]
    assert fund_signature.transaction_raw() == clean_transaction_raw(
        transaction_raw=_["vapor"]["fund"]["signed"]["transaction_raw"])
Пример #3
0
def test_vapor_fund_transaction():

    htlc = HTLC(network=_["vapor"]["network"]).build_htlc(
        secret_hash=_["vapor"]["htlc"]["secret"]["hash"],
        recipient_public_key=_["vapor"]["wallet"]["recipient"]["public_key"],
        sender_public_key=_["vapor"]["wallet"]["sender"]["public_key"],
        endblock=_["vapor"]["htlc"]["endblock"])

    unsigned_fund_transaction = FundTransaction(network=_["vapor"]["network"])

    unsigned_fund_transaction.build_transaction(
        address=_["vapor"]["wallet"]["sender"]["address"],
        htlc=htlc,
        asset=_["vapor"]["asset"],
        amount=_["vapor"]["amount"],
        unit=_["vapor"]["unit"])

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

    signed_fund_transaction = unsigned_fund_transaction.sign(solver=FundSolver(
        xprivate_key=_["vapor"]["wallet"]["sender"]["xprivate_key"],
        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_fund_transaction.type(
    ) == _["vapor"]["fund"]["signed"]["type"]
    assert signed_fund_transaction.fee() == _["vapor"]["fund"]["signed"]["fee"]
    assert signed_fund_transaction.hash(
    ) == _["vapor"]["fund"]["signed"]["hash"]
    assert signed_fund_transaction.raw() == _["vapor"]["fund"]["signed"]["raw"]
    # assert signed_fund_transaction.json() == _["vapor"]["fund"]["signed"]["json"]
    assert signed_fund_transaction.unsigned_datas(
    ) == _["vapor"]["fund"]["signed"]["unsigned_datas"]
    assert signed_fund_transaction.signatures(
    ) == _["vapor"]["fund"]["signed"]["signatures"]
    assert signed_fund_transaction.transaction_raw() == clean_transaction_raw(
        transaction_raw=_["vapor"]["fund"]["signed"]["transaction_raw"])
Пример #4
0
def test_vapor_fund_transaction():

    unsigned_fund_transaction = FundTransaction(network=_["vapor"]["network"])

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

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

    signed_fund_transaction = unsigned_fund_transaction.sign(solver=FundSolver(
        xprivate_key=_["vapor"]["wallet"]["sender"]["xprivate_key"],
        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_fund_transaction.type(
    ) == _["vapor"]["fund"]["signed"]["type"]
    assert signed_fund_transaction.fee() == _["vapor"]["fund"]["signed"]["fee"]
    assert signed_fund_transaction.hash(
    ) == _["vapor"]["fund"]["signed"]["hash"]
    assert signed_fund_transaction.raw() == _["vapor"]["fund"]["signed"]["raw"]
    # assert signed_fund_transaction.json() == _["vapor"]["fund"]["signed"]["json"]
    assert signed_fund_transaction.unsigned_datas(
    ) == _["vapor"]["fund"]["signed"]["unsigned_datas"]
    assert signed_fund_transaction.signatures(
    ) == _["vapor"]["fund"]["signed"]["signatures"]
    assert signed_fund_transaction.transaction_raw() == clean_transaction_raw(
        transaction_raw=_["vapor"]["fund"]["signed"]["transaction_raw"])
Пример #5
0
print("Unsigned Fund Transaction Fee:", unsigned_fund_transaction.fee(unit="NEU"), "NEU")
print("Unsigned Fund Transaction Hash:", unsigned_fund_transaction.hash())
print("Unsigned Fund Transaction Main Raw:", unsigned_fund_transaction.raw())
# print("Unsigned Fund Transaction Json:", json.dumps(unsigned_fund_transaction.json(), indent=4))
print("Unsigned Fund Transaction Unsigned Datas:", json.dumps(unsigned_fund_transaction.unsigned_datas(), indent=4))
print("Unsigned Fund Transaction Signatures:", json.dumps(unsigned_fund_transaction.signatures(), indent=4))
print("Unsigned Fund Transaction Type:", unsigned_fund_transaction.type())

unsigned_fund_transaction_raw = unsigned_fund_transaction.transaction_raw()
print("Unsigned Fund Transaction Raw:", unsigned_fund_transaction_raw)

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

# Initialize fund solver
fund_solver: FundSolver = FundSolver(
    xprivate_key=sender_wallet.xprivate_key()
)

# Sing unsigned fund transaction
signed_fund_transaction: FundTransaction = unsigned_fund_transaction.sign(fund_solver)

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

signed_fund_transaction_raw: str = signed_fund_transaction.transaction_raw()
print("Signed Fund Transaction Raw:", signed_fund_transaction_raw)