Skip to content

Commit

Permalink
28th Nov update. test_pss & test_pinning passed. upload function of m…
Browse files Browse the repository at this point in the history
…odules/chunk.py seems to be broken
  • Loading branch information
Aviksaikat committed Nov 29, 2023
1 parent 2d137df commit 40a7d6b
Show file tree
Hide file tree
Showing 24 changed files with 384 additions and 122 deletions.
9 changes: 6 additions & 3 deletions src/bee_py/modules/bytes.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,8 @@ def upload(

if response.status_code != 201: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

upload_response = response.json()
reference = Reference(upload_response["reference"])
Expand Down Expand Up @@ -67,7 +68,8 @@ def download(request_options: BeeRequestOptions, _hash: ReferenceOrENS) -> Data:

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

return wrap_bytes_with_helpers(response.content)

Expand All @@ -89,6 +91,7 @@ def download_readable(request_options: BeeRequestOptions, _hash: ReferenceOrENS)

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

return response
20 changes: 14 additions & 6 deletions src/bee_py/modules/bzz.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,12 @@ def upload_file(
UploadResult: The result of the upload operation.
"""

if not options or isinstance(options, dict):
options = FileUploadOptions.parse_obj(options)
if options:
if isinstance(options, dict):
options = FileUploadOptions.parse_obj(options)
options.content_type = "application/octet-stream"
else:
options = FileUploadOptions()
options.content_type = "application/octet-stream"

headers = extract_file_upload_headers(postage_batch_id, options)
Expand All @@ -75,7 +79,8 @@ def upload_file(

if response.status_code != 201: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

upload_response = response.json()
reference = Reference(upload_response["reference"])
Expand Down Expand Up @@ -105,7 +110,8 @@ def download_file(request_options: BeeRequestOptions, _hash: ReferenceOrENS, pat

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

file_headers = FileHeaders.parse_obj(read_file_headers(response.headers))
file_data = wrap_bytes_with_helpers(response.content)
Expand All @@ -131,7 +137,8 @@ def download_file_readable(request_options: BeeRequestOptions, _hash: ReferenceO

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

file_headers = read_file_headers(response.headers)
file_data = response.data
Expand Down Expand Up @@ -208,7 +215,8 @@ def upload_collection(

if response.status_code != 201: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

upload_response = response.json()
reference = Reference(upload_response["reference"])
Expand Down
19 changes: 14 additions & 5 deletions src/bee_py/modules/chunk.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,14 @@
from bee_py.utils.bytes import wrap_bytes_with_helpers
from bee_py.utils.headers import extract_upload_headers
from bee_py.utils.http import http
from bee_py.utils.logging import logger

ENDPOINT = "chunks"


# TODO: there is an issue with the upload function of chunk. tests are sutck


def upload(
request_options: BeeRequestOptions, data: bytes, postage_batch_id: BatchId, options: Optional[UploadOptions] = None
) -> Reference:
Expand All @@ -31,11 +35,14 @@ def upload(
}

response = http(request_options, config)
print("PoGO")

# * Raises a HTTPError if the response status is 4xx, 5xx
response.raise_for_status()
if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

return response.json()["reference"]
return Reference(response.json()["reference"])


def download(request_options: BeeRequestOptions, _hash: ReferenceOrENS) -> Data:
Expand All @@ -45,6 +52,8 @@ def download(request_options: BeeRequestOptions, _hash: ReferenceOrENS) -> Data:
}
response = http(request_options, config)

# * Raises a HTTPError if the response status is 4xx, 5xx
response.raise_for_status()
if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())
return wrap_bytes_with_helpers(response.content)
12 changes: 8 additions & 4 deletions src/bee_py/modules/debug/balance.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ def get_all_balances(request_options: BeeRequestOptions) -> BalanceResponse:

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

balances_response = response.json()
return BalanceResponse.parse_obj(balances_response)
Expand All @@ -44,7 +45,8 @@ def get_peer_balance(request_options: BeeRequestOptions, address: AddressType) -

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())
balances_response = response.json()

return PeerBalance.parse_obj(balances_response)
Expand All @@ -64,7 +66,8 @@ def get_past_due_consumption_balances(request_options: BeeRequestOptions) -> Bal

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

balances_response = response.json()
return BalanceResponse.parse_obj(balances_response)
Expand All @@ -85,7 +88,8 @@ def get_past_due_consumption_peer_balance(request_options: BeeRequestOptions, ad

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

balances_response = response.json()
return PeerBalance.parse_obj(balances_response)
24 changes: 16 additions & 8 deletions src/bee_py/modules/debug/chequebook.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@ def get_chequebook_address(request_options: BeeRequestOptions) -> ChequebookAddr

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

chequebook_address_response = response.json()
return ChequebookAddressResponse.parse_obj(chequebook_address_response)
Expand All @@ -56,7 +57,8 @@ def get_chequebook_balance(request_options: BeeRequestOptions) -> ChequebookBala

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

chequebook_balance_response = response.json()
return ChequebookBalanceResponse.parse_obj(chequebook_balance_response)
Expand All @@ -83,7 +85,8 @@ def get_last_cashout_action(

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

last_cashout_action_response = response.json()
return LastCashoutActionResponse.parse_obj(last_cashout_action_response)
Expand Down Expand Up @@ -127,7 +130,8 @@ def cashout_last_cheque(

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

transaction_response = response.json()
return transaction_response["transactionHash"]
Expand All @@ -154,7 +158,8 @@ def get_last_cheques_for_peer(

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

last_cheques_for_peer_response = response.json()
return LastChequesForPeerResponse.parse_obj(last_cheques_for_peer_response)
Expand All @@ -177,7 +182,8 @@ def get_last_cheques(request_options: BeeRequestOptions) -> LastChequesResponse:

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

last_cheques_response = response.json()
return LastChequesResponse.parse_obj(last_cheques_response)
Expand Down Expand Up @@ -216,7 +222,8 @@ def deposit_tokens(

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

transaction_response = response.json()
return transaction_response["transactionHash"]
Expand Down Expand Up @@ -255,7 +262,8 @@ def withdraw_tokens(

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

transaction_response = response.json()
return transaction_response["transactionHash"]
18 changes: 12 additions & 6 deletions src/bee_py/modules/debug/connectivity.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ def get_node_addresses(request_options: BeeRequestOptions) -> NodeAddresses:

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

addresses_response = response.json()
return NodeAddresses.parse_obj(addresses_response)
Expand All @@ -49,7 +50,8 @@ def get_peers(request_options: NodeAddresses) -> Peers:

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

peers_response = response.json()
return Peers.parse_obj(peers_response)
Expand All @@ -72,7 +74,8 @@ def get_blocklist(request_options: BeeRequestOptions) -> Peers:

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

blocklist_response = response.json()
# * Extract the 'address' field from each peer in the 'peers' list
Expand All @@ -95,7 +98,8 @@ def remove_peer(request_options: BeeRequestOptions, peer: str) -> RemovePeerResp

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

return RemovePeerResponse.parse_obj(response.json())

Expand All @@ -117,7 +121,8 @@ def get_topology(request_options: BeeRequestOptions) -> Topology:

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

return Topology.parse_obj(response.json())

Expand All @@ -137,6 +142,7 @@ def ping_peer(request_options: BeeRequestOptions, peer: str) -> PingResponse:

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

return PingResponse.parse_obj(response.json())
6 changes: 4 additions & 2 deletions src/bee_py/modules/debug/settlements.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,8 @@ def get_settlements(request_options: BeeRequestOptions, peer: str) -> Settlement

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

settlements_response = response.json()
return Settlements.parse_obj(settlements_response)
Expand All @@ -47,7 +48,8 @@ def get_all_settlements(request_options: BeeRequestOptions) -> AllSettlements:
response = http(request_options, config)
if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

all_settlements_response = response.json()

Expand Down
6 changes: 4 additions & 2 deletions src/bee_py/modules/debug/stake.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ def get_stake(request_options: BeeRequestOptions) -> NumberString:

if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

return response.json()["stakedAmount"]

Expand Down Expand Up @@ -87,7 +88,8 @@ def get_redistribution_state(request_options: BeeRequestOptions) -> Redistributi
response = http(request_options, config)
if response.status_code != 200: # noqa: PLR2004
logger.info(response.json())
logger.error(response.raise_for_status())
if logger.error(response.raise_for_status()):
logger.error(response.raise_for_status())

redistribution_state = response.json()

Expand Down
Loading

0 comments on commit 40a7d6b

Please sign in to comment.