handle `len(blobs) == 0` case
This commit is contained in:
parent
e79caff2f7
commit
85b0ae854f
|
@ -173,10 +173,12 @@ def add_block(spec,
|
||||||
|
|
||||||
# Check blob_data
|
# Check blob_data
|
||||||
if blob_data is not None:
|
if blob_data is not None:
|
||||||
assert len(blob_data.blobs) == len(blob_data.proofs)
|
|
||||||
blobs = spec.List[spec.Blob, spec.MAX_BLOBS_PER_BLOCK](blob_data.blobs)
|
blobs = spec.List[spec.Blob, spec.MAX_BLOBS_PER_BLOCK](blob_data.blobs)
|
||||||
|
if len(blobs) > 0:
|
||||||
blobs_root = blobs.hash_tree_root()
|
blobs_root = blobs.hash_tree_root()
|
||||||
yield get_blobs_file_name(blobs_root=blobs_root), blobs
|
yield get_blobs_file_name(blobs_root=blobs_root), blobs
|
||||||
|
else:
|
||||||
|
blobs_root = None
|
||||||
|
|
||||||
is_blob_data_test = blob_data is not None
|
is_blob_data_test = blob_data is not None
|
||||||
|
|
||||||
|
@ -184,7 +186,7 @@ def add_block(spec,
|
||||||
if is_blob_data_test:
|
if is_blob_data_test:
|
||||||
test_steps.append({
|
test_steps.append({
|
||||||
'block': get_block_file_name(signed_block),
|
'block': get_block_file_name(signed_block),
|
||||||
'blobs': get_blobs_file_name(blobs_root=blobs_root),
|
'blobs': None if blobs_root is None else get_blobs_file_name(blobs_root=blobs_root),
|
||||||
'proofs': [encode_hex(proof) for proof in blob_data.proofs],
|
'proofs': [encode_hex(proof) for proof in blob_data.proofs],
|
||||||
'valid': valid,
|
'valid': valid,
|
||||||
})
|
})
|
||||||
|
|
|
@ -85,8 +85,9 @@ The parameter that is required for executing `on_block(store, block)`.
|
||||||
{
|
{
|
||||||
block: string -- the name of the `block_<32-byte-root>.ssz_snappy` file.
|
block: string -- the name of the `block_<32-byte-root>.ssz_snappy` file.
|
||||||
To execute `on_block(store, block)` with the given attestation.
|
To execute `on_block(store, block)` with the given attestation.
|
||||||
blobs: string -- optional, the name of the `blobs_<32-byte-root>.ssz_snappy` file.
|
blobs: string or `null` -- optional, the name of the `blobs_<32-byte-root>.ssz_snappy` file.
|
||||||
The blobs file content is a `List[Blob, MAX_BLOBS_PER_BLOCK]` SSZ object.
|
The blobs file content is a `List[Blob, MAX_BLOBS_PER_BLOCK]` SSZ object.
|
||||||
|
If it's `null`, `blobs` is an empty list.
|
||||||
proofs: array of byte48 hex string -- optional, the proofs of blob commitments.
|
proofs: array of byte48 hex string -- optional, the proofs of blob commitments.
|
||||||
valid: bool -- optional, default to `true`.
|
valid: bool -- optional, default to `true`.
|
||||||
If it's `false`, this execution step is expected to be invalid.
|
If it's `false`, this execution step is expected to be invalid.
|
||||||
|
|
Loading…
Reference in New Issue