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)
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"])
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"])
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"])
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)