private Network InitTest() { Network network = new StratisTest(); network.MoneyUnits = GetMoneyUnitsTest(); return(network); }
public void StratisConsensusRulesRegistrationTest() { Network network = new StratisTest(); new FullNodeBuilderConsensusExtension.PosConsensusRulesRegistration().RegisterRules(network.Consensus); List <IHeaderValidationConsensusRule> headerValidationRules = network.Consensus.HeaderValidationRules; headerValidationRules.Count.Should().Be(7); headerValidationRules[0].Should().BeOfType <HeaderTimeChecksRule>(); headerValidationRules[1].Should().BeOfType <HeaderTimeChecksPosRule>(); headerValidationRules[2].Should().BeOfType <StratisBugFixPosFutureDriftRule>(); headerValidationRules[3].Should().BeOfType <CheckDifficultyPosRule>(); headerValidationRules[4].Should().BeOfType <StratisHeaderVersionRule>(); headerValidationRules[5].Should().BeOfType <ProvenHeaderSizeRule>(); headerValidationRules[6].Should().BeOfType <ProvenHeaderCoinstakeRule>(); List <IIntegrityValidationConsensusRule> integrityValidationRules = network.Consensus.IntegrityValidationRules; integrityValidationRules.Count.Should().Be(3); integrityValidationRules[0].Should().BeOfType <BlockMerkleRootRule>(); integrityValidationRules[1].Should().BeOfType <PosBlockSignatureRepresentationRule>(); integrityValidationRules[2].Should().BeOfType <PosBlockSignatureRule>(); List <IPartialValidationConsensusRule> partialValidationRules = network.Consensus.PartialValidationRules; partialValidationRules.Count.Should().Be(11); partialValidationRules[0].Should().BeOfType <SetActivationDeploymentsPartialValidationRule>(); partialValidationRules[1].Should().BeOfType <PosTimeMaskRule>(); partialValidationRules[2].Should().BeOfType <TransactionLocktimeActivationRule>(); partialValidationRules[3].Should().BeOfType <CoinbaseHeightActivationRule>(); partialValidationRules[4].Should().BeOfType <WitnessCommitmentsRule>(); partialValidationRules[5].Should().BeOfType <BlockSizeRule>(); partialValidationRules[6].Should().BeOfType <EnsureCoinbaseRule>(); partialValidationRules[7].Should().BeOfType <CheckPowTransactionRule>(); partialValidationRules[8].Should().BeOfType <CheckPosTransactionRule>(); partialValidationRules[9].Should().BeOfType <CheckSigOpsRule>(); partialValidationRules[10].Should().BeOfType <PosCoinstakeRule>(); List <IFullValidationConsensusRule> fullValidationRules = network.Consensus.FullValidationRules; fullValidationRules.Count.Should().Be(7); fullValidationRules[0].Should().BeOfType <SetActivationDeploymentsFullValidationRule>(); fullValidationRules[1].Should().BeOfType <CheckDifficultyHybridRule>(); fullValidationRules[2].Should().BeOfType <LoadCoinviewRule>(); fullValidationRules[3].Should().BeOfType <TransactionDuplicationActivationRule>(); fullValidationRules[4].Should().BeOfType <PosCoinviewRule>(); fullValidationRules[5].Should().BeOfType <PosColdStakingRule>(); fullValidationRules[6].Should().BeOfType <SaveCoinviewRule>(); }
public void correctly_identify_mainchain() { var stratisRegTest = new StratisRegTest(); var chain = stratisRegTest.ToChain(); chain.Should().Be(Chain.Mainchain); chain.Should().NotBe(Chain.Sidechain); var stratisTest = new StratisTest(); chain = stratisTest.ToChain(); chain.Should().Be(Chain.Mainchain); chain.Should().NotBe(Chain.Sidechain); var stratisMain = new StratisMain(); chain = stratisMain.ToChain(); chain.Should().Be(Chain.Mainchain); chain.Should().NotBe(Chain.Sidechain); }