Ejemplo n.º 1
0
        public async Task track_untrack_track_works()
        {
            SingleReleaseSpecProvider spec    = new SingleReleaseSpecProvider(ConstantinopleFix.Instance, 1);
            TestRpcBlockchain         testRpc = await TestRpcBlockchain.ForTest(SealEngineType.NethDev).Build(spec);

            BaselineModule baselineModule = CreateBaselineModule(testRpc);

            await testRpc.AddFunds(TestItem.Addresses[0], 1.Ether());

            Address treeAddress = await Deploy(testRpc, baselineModule);

            var result = await baselineModule.baseline_track(treeAddress);

            result.Result.ResultType.Should().Be(ResultType.Success);
            result = await baselineModule.baseline_untrack(treeAddress);

            result.Result.ResultType.Should().Be(ResultType.Success);
            result = await baselineModule.baseline_track(treeAddress);

            result.Result.ResultType.Should().Be(ResultType.Success);

            var countResult = await baselineModule.baseline_getCount(treeAddress);

            countResult.Result.ResultType.Should().Be(ResultType.Success);
        }
        public async Task untrack_fails_when_not_tracked()
        {
            SingleReleaseSpecProvider spec = new(ConstantinopleFix.Instance, 1);

            using TestRpcBlockchain testRpc = await TestRpcBlockchain.ForTest <BaseLineRpcBlockchain>(SealEngineType.NethDev).Build(spec);

            BaselineModule baselineModule = CreateBaselineModule(testRpc);

            var result = await baselineModule.baseline_untrack(TestItem.AddressC);

            result.Result.ResultType.Should().Be(ResultType.Failure);
        }
        public async Task track_untrack_will_cause_tracking_checks_to_start_failing()
        {
            SingleReleaseSpecProvider spec = new(ConstantinopleFix.Instance, 1);

            using TestRpcBlockchain testRpc = await TestRpcBlockchain.ForTest <BaseLineRpcBlockchain>(SealEngineType.NethDev).Build(spec);

            BaselineModule baselineModule = CreateBaselineModule(testRpc);

            Address treeAddress = await Deploy(testRpc, baselineModule);

            var result = await baselineModule.baseline_track(treeAddress);

            result.Result.ResultType.Should().Be(ResultType.Success);
            result = await baselineModule.baseline_untrack(treeAddress);

            var keccakResult = await baselineModule.baseline_insertCommit(TestItem.Addresses[0], TestItem.AddressC, Keccak.Zero);

            keccakResult.Result.ResultType.Should().Be(ResultType.Failure);

            keccakResult = await baselineModule.baseline_insertCommits(TestItem.Addresses[0], TestItem.AddressC, Keccak.Zero);

            keccakResult.Result.ResultType.Should().Be(ResultType.Failure);
        }