fix: Remove redundant ConsensusBranchId constants

This commit is contained in:
teor 2020-08-19 15:14:58 +10:00 committed by Deirdre Connolly
parent 5afa24588a
commit 9a8af731b1
2 changed files with 11 additions and 25 deletions

View File

@ -72,23 +72,6 @@ pub(crate) const TESTNET_ACTIVATION_HEIGHTS: &[(block::Height, NetworkUpgrade)]
#[derive(Copy, Clone, Debug, Eq, Hash, PartialEq)] #[derive(Copy, Clone, Debug, Eq, Hash, PartialEq)]
pub struct ConsensusBranchId(u32); pub struct ConsensusBranchId(u32);
impl ConsensusBranchId {
/// Consensus branch ID for the overwinter network branch
pub const OVERWINTER: ConsensusBranchId = ConsensusBranchId(0x5ba81b19);
/// Consensus branch ID for the sapling network branch
pub const SAPLING: ConsensusBranchId = ConsensusBranchId(0x76b809bb);
/// Consensus branch ID for the blossom network branch
pub const BLOSSOM: ConsensusBranchId = ConsensusBranchId(0x2bb40e60);
/// Consensus branch ID for the heartwood network branch
pub const HEARTWOOD: ConsensusBranchId = ConsensusBranchId(0xf5b9230b);
/// Consensus branch ID for the canopy network branch
pub const CANOPY: ConsensusBranchId = ConsensusBranchId(0xe9ff75a6);
}
impl From<ConsensusBranchId> for u32 { impl From<ConsensusBranchId> for u32 {
fn from(branch: ConsensusBranchId) -> u32 { fn from(branch: ConsensusBranchId) -> u32 {
branch.0 branch.0
@ -106,14 +89,13 @@ impl From<ConsensusBranchId> for u32 {
/// This is actually a bijective map, but it is const, so we use a vector, and /// This is actually a bijective map, but it is const, so we use a vector, and
/// do the uniqueness check in the unit tests. /// do the uniqueness check in the unit tests.
pub(crate) const CONSENSUS_BRANCH_IDS: &[(NetworkUpgrade, ConsensusBranchId)] = &[ pub(crate) const CONSENSUS_BRANCH_IDS: &[(NetworkUpgrade, ConsensusBranchId)] = &[
// TODO(teor): byte order? (Overwinter, ConsensusBranchId(0x5ba81b19)),
(Overwinter, ConsensusBranchId::OVERWINTER), (Sapling, ConsensusBranchId(0x76b809bb)),
(Sapling, ConsensusBranchId::SAPLING), (Blossom, ConsensusBranchId(0x2bb40e60)),
(Blossom, ConsensusBranchId::BLOSSOM), (Heartwood, ConsensusBranchId(0xf5b9230b)),
(Heartwood, ConsensusBranchId::HEARTWOOD),
// As of 21 July 2020. Could change before mainnet activation. // As of 21 July 2020. Could change before mainnet activation.
// See ZIP 251 for updates. // See ZIP 251 for updates.
(Canopy, ConsensusBranchId::CANOPY), (Canopy, ConsensusBranchId(0xe9ff75a6)),
]; ];
impl NetworkUpgrade { impl NetworkUpgrade {

View File

@ -135,7 +135,9 @@ mod tests {
use hex::FromHex; use hex::FromHex;
use std::convert::TryInto; use std::convert::TryInto;
use std::sync::Arc; use std::sync::Arc;
use zebra_chain::{serialization::ZcashDeserializeInto, transparent}; use zebra_chain::{
parameters::NetworkUpgrade::*, serialization::ZcashDeserializeInto, transparent,
};
use zebra_test::prelude::*; use zebra_test::prelude::*;
lazy_static::lazy_static! { lazy_static::lazy_static! {
@ -156,7 +158,9 @@ mod tests {
lock_script: transparent::Script(SCRIPT_PUBKEY.clone()), lock_script: transparent::Script(SCRIPT_PUBKEY.clone()),
}; };
let input_index = 0; let input_index = 0;
let branch_id = ConsensusBranchId::BLOSSOM; let branch_id = Blossom
.branch_id()
.expect("Blossom has a ConsensusBranchId");
is_valid(transaction, branch_id, (input_index, output))?; is_valid(transaction, branch_id, (input_index, output))?;