You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// remove first block producer in order to trigger a skip block. Never connect him again
// remove the second block producer to trigger another skip block after the first one (which we want someone to catch up to). Never connect him again
// third block producer needs to be disconnected as well and then reconnected to catch up to the second's skip blocks while not having seen the first one,
// resulting in him producing the first block.
let hub = MockHub::default();
let env = VolatileDatabase::new(20).expect("Could not open a volatile database");
// In total 8 validator are registered. after 3 validators are taken offline the remaining 5 should not be able to progress on their own
letmut validators = build_validators::<Network>(
env,
&(9u64..=16u64).collect::<Vec<_>>(),
&mutSome(hub),
false,
)
.await;
// Maintain a collection of the corresponding networks.
let networks:Vec<Arc<Network>> = validators
.iter()
.map(|v| v.consensus.network.clone())
.collect();
// Disconnect the block producers for the next 3 skip blocks. remember the one which is supposed to actually create the block (3rd skip block)
let(validator, _) = {
let validator = validator_for_slot(&mut validators,1,1);
validator
.consensus
.network
.disconnect(CloseReason::GoingOffline)
.await;
let id1 = validator.validator_slot_band();
let validator = validator_for_slot(&mut validators,2,2);
validator
.consensus
.network
.disconnect(CloseReason::GoingOffline)
.await;
let id2 = validator.validator_slot_band();
assert_ne!(id2, id1);
// ideally we would remove the validators from the vec for them to not even execute.
// However the implementation does still progress their chains and since they have registered listeners, they would panic.
// that is confusing, thus they are allowed to execute (with no validator network connection)
can_rebranch_and_revert_chunks
(ignored in 27cfb4e).test_request_component
(ignored since its introduction in 502c473).four_validators_can_create_an_epoch
(ignored since cbb6fba).validator_can_catch_up
(ignored since 79d1377).core-rs-albatross/blockchain/tests/push_with_chunks.rs
Lines 254 to 314 in 155af0a
core-rs-albatross/consensus/tests/request_component.rs
Lines 18 to 87 in 155af0a
core-rs-albatross/validator/tests/integration.rs
Lines 81 to 99 in 155af0a
core-rs-albatross/validator/tests/mock.rs
Lines 205 to 326 in 155af0a
What should we do with these tests? Remove them? Try to fix them? I stumbled upon them while trying to run long-running tests.
The text was updated successfully, but these errors were encountered: