public async Task FIllExtraData_TransactionPackingDisabled()
        {
            var merkleTreeRoot = HashHelper.ComputeFrom("MerkleTreeRoot");
            var expected       = new CrossChainExtraData {
                TransactionStatusMerkleTreeRoot = merkleTreeRoot
            };
            var header = new BlockHeader
            {
                PreviousBlockHash = HashHelper.ComputeFrom("PreviousHash"),
                Height            = 2
            };

            _crossChainTestHelper.AddFakeExtraData(header.PreviousBlockHash, expected);
            await _transactionPackingOptionProvider.SetTransactionPackingOptionAsync(new BlockIndex
            {
                BlockHash   = header.PreviousBlockHash,
                BlockHeight = header.Height - 1
            }, false);

            var bytes = await _crossChainBlockExtraDataProvider.GetBlockHeaderExtraDataAsync(header);

            Assert.Empty(bytes);
        }
        public async Task ValidateBlockBeforeExecute_Test()
        {
            var fakeMerkleTreeRoot1       = HashHelper.ComputeFrom("fakeMerkleTreeRoot1");
            var fakeSideChainId           = ChainHelper.ConvertBase58ToChainId("2112");
            var fakeSideChainBlockData    = CreateSideChainBlockData(fakeSideChainId, 1, fakeMerkleTreeRoot1);
            var sideChainTxMerkleTreeRoot = ComputeRootHash(new[] { fakeSideChainBlockData });
            var block = CreateFilledBlock(sideChainTxMerkleTreeRoot);
            {
                var res = await _crossChainBlockValidationProvider.ValidateBlockBeforeExecuteAsync(block);

                Assert.False(res);
            }

            {
                _crossChainTestHelper.AddFakeExtraData(block.Header.PreviousBlockHash,
                                                       new CrossChainExtraData {
                    TransactionStatusMerkleTreeRoot = sideChainTxMerkleTreeRoot
                });

                var res = await _crossChainBlockValidationProvider.ValidateBlockBeforeExecuteAsync(block);

                Assert.True(res);
            }
        }