public void ZCashJob_Testnet_Validate_FoundersRewardAddress_At_Height() { var job = new EquihashJob(); var bt = new EquihashBlockTemplate { Target = "0000407f43000000000000000000000000000000000000000000000000000000", PreviousBlockhash = "000003be5873fc64b1b784318e3226a1ab2a1805bebba5a0d670be54ff7772e8", Bits = "003355", Transactions = new BitcoinBlockTransaction[0], Subsidy = new ZCashBlockSubsidy { Founders = 2.5m, Miner = 10m, } }; var clock = new MockMasterClock { CurrentTime = DateTimeOffset.FromUnixTimeSeconds(1508869874).UtcDateTime }; var equihashCoin = poolConfig.Template.As <EquihashCoinTemplate>(); var chainConfig = equihashCoin.GetNetwork(BitcoinNetworkType.Main); var solver = EquihashSolverFactory.GetSolver(ModuleInitializer.Container, chainConfig.Solver); job.Init(bt, "1", poolConfig, clusterConfig, clock, poolAddressDestination, BitcoinNetworkType.Test, solver); bt.Height = 1; Assert.Equal(job.GetFoundersRewardAddress(), "t2UNzUUx8mWBCRYPRezvA363EYXyEpHokyi"); bt.Height = 53126; Assert.Equal(job.GetFoundersRewardAddress(), "t2NGQjYMQhFndDHguvUw4wZdNdsssA6K7x2"); bt.Height = 53127; Assert.Equal(job.GetFoundersRewardAddress(), "t2ENg7hHVqqs9JwU5cgjvSbxnT2a9USNfhy"); }
protected override void PostChainIdentifyConfigure() { ChainConfig = coin.GetNetwork(network.NetworkType); solver = EquihashSolverFactory.GetSolver(ctx, ChainConfig.Solver); base.PostChainIdentifyConfigure(); }
public AionJob(string id, AionBlockTemplate blockTemplate, ILogger logger, DaemonClient daemon, IComponentContext ctx, JObject solver) { Id = id; BlockTemplate = blockTemplate; this.logger = logger; var target = blockTemplate.Target; if (target.StartsWith("0x")) { target = target.Substring(2); } this.daemonClient = daemon; Difficulty = getNetworkDifficulty(); blockTarget = new uint256(target.HexToReverseByteArray()); equihash = EquihashSolverFactory.GetSolver(ctx, solver); }