Skip to content
Snippets Groups Projects

Fix consequence of certification loss

Merged Hugo Trentesaux requested to merge hugo-test-remove-cert into master
1 file
+ 32
2
Compare changes
  • Side-by-side
  • Inline
+ 32
2
@@ -429,7 +429,7 @@ fn test_certification_expire() {
@@ -429,7 +429,7 @@ fn test_certification_expire() {
// smith cert Bob → Alice expires at block 10
// smith cert Bob → Alice expires at block 10
run_to_block(10);
run_to_block(10);
println!("{:?}", System::events());
// println!("{:?}", System::events());
System::assert_has_event(RuntimeEvent::SmithCert(
System::assert_has_event(RuntimeEvent::SmithCert(
pallet_certification::Event::RemovedCert {
pallet_certification::Event::RemovedCert {
issuer: 2, // Bob
issuer: 2, // Bob
@@ -452,7 +452,7 @@ fn test_certification_expire() {
@@ -452,7 +452,7 @@ fn test_certification_expire() {
// normal cert Bob → Alice expires at block 20
// normal cert Bob → Alice expires at block 20
run_to_block(20);
run_to_block(20);
println!("{:?}", System::events());
// println!("{:?}", System::events());
System::assert_has_event(RuntimeEvent::Cert(
System::assert_has_event(RuntimeEvent::Cert(
pallet_certification::Event::RemovedCert {
pallet_certification::Event::RemovedCert {
issuer: 2, // Bob
issuer: 2, // Bob
@@ -466,5 +466,35 @@ fn test_certification_expire() {
@@ -466,5 +466,35 @@ fn test_certification_expire() {
System::assert_has_event(RuntimeEvent::Membership(
System::assert_has_event(RuntimeEvent::Membership(
pallet_membership::Event::MembershipExpired(1),
pallet_membership::Event::MembershipExpired(1),
));
));
 
 
// --- BLOCK 21 ---
 
// Bob and Charlie can renew their membership
 
run_to_block(21);
 
assert_ok!(Membership::renew_membership(RuntimeOrigin::signed(2)));
 
assert_ok!(Membership::renew_membership(RuntimeOrigin::signed(3)));
 
 
// Alice can not renew her membership which does not exist because it is pending
 
assert_noop!(
 
Membership::renew_membership(RuntimeOrigin::signed(1)),
 
pallet_membership::Error::<Test, Instance1>::MembershipNotFound
 
);
 
 
// Alice can not claim her membership because she does not have enough certifications
 
assert_noop!(
 
Membership::claim_membership(RuntimeOrigin::signed(1)),
 
pallet_duniter_wot::Error::<Test, Instance1>::IdtyNotAllowedToClaimMembership
 
);
 
 
// --- BLOCK 23 ---
 
run_to_block(23);
 
// println!("{:?}", System::events());
 
// after a delay (3 blocks), the pending membership finally expires
 
System::assert_has_event(RuntimeEvent::Membership(
 
pallet_membership::Event::PendingMembershipExpired(1),
 
));
 
// and the identity is removed
 
System::assert_has_event(RuntimeEvent::Identity(
 
pallet_identity::Event::IdtyRemoved { idty_index: 1 },
 
));
})
})
}
}
Loading