test_mining.py 892 B

12345678910111213141516171819202122232425262728
  1. from .mock_protocol import MockProtocol
  2. from src.mining import Miner
  3. from src.block import GENESIS_BLOCK
  4. from src.crypto import Signing
  5. from src.transaction import Transaction, TransactionInput, TransactionTarget
  6. from time import sleep
  7. reward_key = Signing.generatePrivateKey()
  8. proto = MockProtocol()
  9. miner1 = Miner(proto, reward_key)
  10. miner2 = Miner(proto, reward_key)
  11. miner2.chain_changed()
  12. sleep(5)
  13. #proto.fake_block_received(GENESIS_BLOCK)
  14. strans1 = miner2.chainbuilder.primary_block_chain.head.transactions[0]
  15. strans1 = TransactionInput(strans1.get_hash(), 0)
  16. strans2 = miner2.chainbuilder.primary_block_chain.head.transactions[0]
  17. strans2 = TransactionInput(strans2.get_hash(), 0)
  18. trans = Transaction([strans1, strans2], [])
  19. trans.sign([reward_key, reward_key])
  20. miner2.chainbuilder.new_transaction_received(trans)
  21. sleep(5)
  22. print(len(miner2.chainbuilder.primary_block_chain.blocks))