Rename neofs to frostfs

Signed-off-by: Yulia Kovshova <y.kovshova@yadro.com>
This commit is contained in:
Юлия Ковшова 2023-01-10 16:02:24 +03:00 committed by Stanislav Bogatyrev
parent 5a2c7ac98d
commit 6d3b6f0f2f
83 changed files with 330 additions and 338 deletions

View file

View file

@ -0,0 +1,69 @@
import base64
import binascii
import json
import base58
from neo3.wallet import wallet as neo3_wallet
def str_to_ascii_hex(input: str) -> str:
b = binascii.hexlify(input.encode())
return str(b)[2:-1]
def ascii_hex_to_str(input: str) -> bytes:
return bytes.fromhex(input)
# Two functions below do parsing of Base64-encoded byte arrays which
# tests receive from Neo node RPC calls.
def process_b64_bytearray_reverse(data: str) -> bytes:
"""
This function decodes input data from base64, reverses the byte
array and returns its string representation.
"""
arr = bytearray(base64.standard_b64decode(data))
arr.reverse()
return binascii.b2a_hex(arr)
def process_b64_bytearray(data: str) -> bytes:
"""
This function decodes input data from base64 and returns the
bytearray string representation.
"""
arr = bytearray(base64.standard_b64decode(data))
return binascii.b2a_hex(arr)
def contract_hash_to_address(chash: str) -> str:
"""
This function accepts contract hash in BE, then translates in to LE,
prepends NEO wallet prefix and encodes to base58. It is equal to
`UInt160ToString` method in NEO implementations.
"""
be = bytearray(bytes.fromhex(chash))
be.reverse()
return base58.b58encode_check(b"\x35" + bytes(be)).decode()
def get_contract_hash_from_manifest(manifest_path: str) -> str:
with open(manifest_path) as m:
data = json.load(m)
# cut off '0x' and return the hash
return data["abi"]["hash"][2:]
def get_wif_from_private_key(priv_key: bytes) -> str:
wif_version = b"\x80"
compressed_flag = b"\x01"
wif = base58.b58encode_check(wif_version + priv_key + compressed_flag)
return wif.decode("utf-8")
def load_wallet(path: str, passwd: str = "") -> neo3_wallet.Wallet:
with open(path, "r") as wallet_file:
wlt_data = wallet_file.read()
return neo3_wallet.Wallet.from_json(json.loads(wlt_data), password=passwd)

View file

@ -0,0 +1,38 @@
import json
import logging
from neo3.wallet import wallet as neo3_wallet
from neo3.wallet import account as neo3_account
logger = logging.getLogger("frostfs.testlib.utils")
def init_wallet(wallet_path: str, wallet_password: str):
"""
Create new wallet and new account.
Args:
wallet_path: The path to the wallet to save wallet.
wallet_password: The password for new wallet.
"""
wallet = neo3_wallet.Wallet()
account = neo3_account.Account.create_new(wallet_password)
wallet.account_add(account)
with open(wallet_path, "w") as out:
json.dump(wallet.to_json(), out)
logger.info(f"Init new wallet: {wallet_path}, address: {account.address}")
def get_last_address_from_wallet(wallet_path: str, wallet_password: str):
"""
Extracting the last address from the given wallet.
Args:
wallet_path: The path to the wallet to extract address from.
wallet_password: The password for the given wallet.
Returns:
The address for the wallet.
"""
with open(wallet_path) as wallet_file:
wallet = neo3_wallet.Wallet.from_json(json.load(wallet_file), password=wallet_password)
address = wallet.accounts[-1].address
logger.info(f"got address: {address}")
return address