GRANDPA finality proof draft (#1268)

* grandpa finality proof

* prove GrandpaApi::grandpa_authorities using parent block + some docs

* create justification when consensus data is changed

* generate justifications periodically

* test for ConsensusChanges
This commit is contained in:
Svyatoslav Nikolsky authored and Gav Wood committed 2019-01-11 19:25:03 +01:00
1 parent 677b79765b
commit 616716cb4b
18 files changed
+786 -113

No files matched your search

@@ -327,7 +327,7 @@ mod tests {
/// Verify extrinsic at given block.
fn validate_transaction(&self, at: &BlockId<Self::Block>, uxt: &ExtrinsicFor<Self>) -> Result<TransactionValidity, Self::Error> {
let block_number = self.block_id_to_number(at)?.unwrap();
let nonce = uxt.transfer.nonce;
let nonce = uxt.transfer().nonce;
if nonce < block_number {
Ok(TransactionValidity::Invalid)
@@ -359,15 +359,12 @@ mod tests {
/// Hash the extrinsic.
fn hash(&self, uxt: &ExtrinsicFor<Self>) -> Self::Hash {
(uxt.transfer.from.to_low_u64_be() << 5) + uxt.transfer.nonce
(uxt.transfer().from.to_low_u64_be() << 5) + uxt.transfer().nonce
}
}
fn uxt(transfer: Transfer) -> Extrinsic {
Extrinsic {
transfer,
signature: Default::default(),
}
Extrinsic::Transfer(transfer, Default::default())
}
fn pool() -> Pool<TestApi> {