From f668b2b43342e3fe0c93c24f91357a3f62111fc9 Mon Sep 17 00:00:00 2001 From: Adrian Sutton Date: Sat, 17 Jul 2021 16:26:18 +1000 Subject: [PATCH] Add tests for SyncAggregate with no participants and all zero signature. --- .../test_process_sync_aggregate.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tests/core/pyspec/eth2spec/test/altair/block_processing/test_process_sync_aggregate.py b/tests/core/pyspec/eth2spec/test/altair/block_processing/test_process_sync_aggregate.py index ad285f43c..effd01047 100644 --- a/tests/core/pyspec/eth2spec/test/altair/block_processing/test_process_sync_aggregate.py +++ b/tests/core/pyspec/eth2spec/test/altair/block_processing/test_process_sync_aggregate.py @@ -113,6 +113,21 @@ def test_invalid_signature_missing_participant(spec, state): yield from run_sync_committee_processing(spec, state, block, expect_exception=True) +@with_altair_and_later +@spec_state_test +@always_bls +def test_invalid_signature_no_participants(spec, state): + committee_indices = compute_committee_indices(spec, state, state.current_sync_committee) + + block = build_empty_block_for_next_slot(spec, state) + # Exclude one participant whose signature was included. + block.body.sync_aggregate = spec.SyncAggregate( + sync_committee_bits=[False for _ in committee_indices], + sync_committee_signature=b'\x00' * 96 + ) + yield from run_sync_committee_processing(spec, state, block, expect_exception=True) + + @with_altair_and_later @spec_state_test @always_bls