示例#1
0
        protected void InitializeContracts()
        {
            //get basic stub
            BasicContractStub =
                GetContractZeroTester(DefaultSenderKeyPair);

            //deploy Parliament contract
            ParliamentContractAddress = AsyncHelper.RunSync(() =>
                                                            DeploySystemSmartContract(
                                                                KernelConstants.CodeCoverageRunnerCategory,
                                                                ParliamentCode,
                                                                ParliamentSmartContractAddressNameProvider.Name,
                                                                DefaultSenderKeyPair
                                                                ));
            ParliamentContractStub = GetParliamentContractTester(DefaultSenderKeyPair);
            //deploy token contract
            TokenContractAddress = AsyncHelper.RunSync(() =>
                                                       DeploySystemSmartContract(
                                                           KernelConstants.CodeCoverageRunnerCategory,
                                                           TokenContractCode,
                                                           TokenSmartContractAddressNameProvider.Name,
                                                           DefaultSenderKeyPair));
            TokenContractStub = GetTokenContractTester(DefaultSenderKeyPair);
            AsyncHelper.RunSync(async() => await InitializeTokenAsync());

            ConsensusContractAddress = AsyncHelper.RunSync(() => DeploySystemSmartContract(
                                                               KernelConstants.CodeCoverageRunnerCategory,
                                                               DPoSConsensusCode,
                                                               ConsensusSmartContractAddressNameProvider.Name,
                                                               DefaultSenderKeyPair));
            ConsensusContractStub = GetConsensusContractTester(DefaultSenderKeyPair);
            AsyncHelper.RunSync(async() => await InitializeConsensusAsync());
        }
        public MultiTokenContractTestBase()
        {
            TokenContractStub =
                GetTester <TokenContractImplContainer.TokenContractImplStub>(TokenContractAddress, DefaultKeyPair);
            Acs2BaseStub = GetTester <ACS2BaseContainer.ACS2BaseStub>(TokenContractAddress, DefaultKeyPair);

            TreasuryContractStub = GetTester <TreasuryContractImplContainer.TreasuryContractImplStub>(
                TreasuryContractAddress,
                DefaultKeyPair);

            TokenConverterContractStub = GetTester <TokenConverterContractImplContainer.TokenConverterContractImplStub>(
                TokenConverterContractAddress,
                DefaultKeyPair);

            BasicFunctionContractAddress = SystemContractAddresses[BasicFunctionContractName];
            BasicFunctionContractStub    = GetTester <BasicFunctionContractContainer.BasicFunctionContractStub>(
                BasicFunctionContractAddress, DefaultKeyPair);

            OtherBasicFunctionContractAddress = SystemContractAddresses[OtherBasicFunctionContractName];
            OtherBasicFunctionContractStub    = GetTester <BasicFunctionContractContainer.BasicFunctionContractStub>(
                OtherBasicFunctionContractAddress, DefaultKeyPair);

            ParliamentContractStub = GetTester <ParliamentContractImplContainer.ParliamentContractImplStub>(
                ParliamentContractAddress, DefaultKeyPair);
        }
        public AssociationContractTestBase()
        {
            AssociationContractStub = GetAssociationContractTester(DefaultSenderKeyPair);

            TokenContractStub = GetTokenContractTester(DefaultSenderKeyPair);

            ParliamentContractStub = GetParliamentContractTester(DefaultSenderKeyPair);
        }
示例#4
0
        protected async Task DeployContractsAsync()
        {
            var category = KernelConstants.CodeCoverageRunnerCategory;
            var code     = Codes.Single(kv => kv.Key.Split(",").First().EndsWith("Configuration")).Value;

            OptionalLogEventProcessingService <IBlockAcceptedLogEventProcessor> .Enabled = true;
            ConfigurationContractAddress = await DeploySystemSmartContract(category, code,
                                                                           ConfigurationSmartContractAddressNameProvider.Name, DefaultSenderKeyPair);

            ConfigurationStub =
                GetTester <ConfigurationContainer.ConfigurationStub>(ConfigurationContractAddress,
                                                                     DefaultSenderKeyPair);

            var consensusContractCode    = Codes.Single(kv => kv.Key.Split(",").First().EndsWith("Consensus.AEDPoS")).Value;
            var consensusContractAddress = await DeploySystemSmartContract(category, consensusContractCode,
                                                                           ConsensusSmartContractAddressNameProvider.Name, DefaultSenderKeyPair);

            var consensusStub = GetTester <AEDPoSContractImplContainer.AEDPoSContractImplStub>(consensusContractAddress,
                                                                                               DefaultSenderKeyPair);

            await consensusStub.FirstRound.SendAsync(
                new MinerList
            {
                Pubkeys = { ByteString.CopyFrom(DefaultSenderKeyPair.PublicKey) }
            }.GenerateFirstRoundOfNewTerm(4000, TimestampHelper.GetUtcNow())
                );

            var parliamentContractCode    = Codes.Single(kv => kv.Key.Split(",").First().EndsWith("Parliament")).Value;
            var parliamentContractAddress = await DeploySystemSmartContract(category, parliamentContractCode,
                                                                            ParliamentSmartContractAddressNameProvider.Name, DefaultSenderKeyPair);

            ParliamentContractStub = GetTester <ParliamentContractImplContainer.ParliamentContractImplStub>(parliamentContractAddress,
                                                                                                            DefaultSenderKeyPair);

            await ParliamentContractStub.Initialize.SendAsync(new InitializeInput
            {
                ProposerAuthorityRequired = true,
                PrivilegedProposer        = Address.FromPublicKey(DefaultSenderKeyPair.PublicKey)
            });
        }