Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 27 additions & 8 deletions client/beefy/src/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -755,10 +755,16 @@ fn beefy_importing_blocks() {
block_on(block_import.import_block(params(block, None), HashMap::new())).unwrap(),
ImportResult::AlreadyInChain
);
// Verify no justifications present:
// Verify no BEEFY justifications present:
{
// none in backend,
assert!(full_client.justifications(&block_id).unwrap().is_none());
assert_eq!(
full_client
.justifications(&block_id)
.unwrap()
.and_then(|j| j.get(BEEFY_ENGINE_ID).cloned()),
None
);
// and none sent to BEEFY worker.
block_on(poll_fn(move |cx| {
assert_eq!(justif_recv.poll_next_unpin(cx), Poll::Pending);
Expand Down Expand Up @@ -787,11 +793,18 @@ fn beefy_importing_blocks() {
..Default::default()
}),
);
// Verify justification successfully imported:
// Verify BEEFY justification successfully imported:
{
// available in backend,
assert!(full_client.justifications(&BlockId::Number(block_num)).unwrap().is_some());
// and also sent to BEEFY worker.
// still not in backend (worker is responsible for appending to backend),
assert_eq!(
full_client
.justifications(&block_id)
.unwrap()
.and_then(|j| j.get(BEEFY_ENGINE_ID).cloned()),
None
);
// but sent to BEEFY worker
// (worker will append it to backend when all previous mandatory justifs are there as well).
block_on(poll_fn(move |cx| {
match justif_recv.poll_next_unpin(cx) {
Poll::Ready(Some(_justification)) => (),
Expand Down Expand Up @@ -823,10 +836,16 @@ fn beefy_importing_blocks() {
..Default::default()
}),
);
// Verify bad justifications was not imported:
// Verify bad BEEFY justifications was not imported:
{
// none in backend,
assert!(full_client.justifications(&block_id).unwrap().is_none());
assert_eq!(
full_client
.justifications(&BlockId::Number(block_num))
.unwrap()
.and_then(|j| j.get(BEEFY_ENGINE_ID).cloned()),
None
);
// and none sent to BEEFY worker.
block_on(poll_fn(move |cx| {
assert_eq!(justif_recv.poll_next_unpin(cx), Poll::Pending);
Expand Down