public void EmptyTransaction()
        {
            ulong   block_size       = 500000;
            var     transaction_list = new List <Transaction>();
            decimal result           = BlockCreationLogic.GetMaxAvalaibleTracsactionFeePerBlock(transaction_list, block_size);
            decimal expected         = 0;

            Assert.AreEqual(expected, result);
        }
        public void LargeSizeTransaction()
        {
            ulong block_size       = 1000;
            var   transaction_list = new List <Transaction>();

            transaction_list.Add(new Transaction(1, 2000, 2000));
            transaction_list.Add(new Transaction(2, 3000, 9000));
            transaction_list.Add(new Transaction(3, 5000, 10000));
            decimal result   = BlockCreationLogic.GetMaxAvalaibleTracsactionFeePerBlock(transaction_list, block_size);
            decimal expected = 0;

            Assert.AreEqual(expected, result);
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            // read input
            FileIoController file_controller = new FileIoController(
                Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName + @".\Resources\Input1.txt");
            List <Transaction> transaction_list = file_controller.LoadTransactionFromFile();

            // process
            decimal final_reward = BaseLogic.GetCurrentBlockReward();

            final_reward += BlockCreationLogic.GetMaxAvalaibleTracsactionFeePerBlock(transaction_list, BaseLogic.GetBlockSize());

            // output
            Console.WriteLine(final_reward);
            Console.ReadKey();
        }