Ejemplo n.º 1
0
def test_clear_transactions_added_to_blockchain():
    transaction_pool = TransactionPool()
    transaction_1 = Transaction(Wallet(), "abcd", 10)
    transaction_2 = Transaction(Wallet(), "abcd", 30)

    transaction_pool.add_transaction(transaction_1)
    transaction_pool.add_transaction(transaction_2)

    blockchain = BlockChain()
    blockchain.add_block([transaction_1.to_json(), transaction_2.to_json()])

    assert transaction_1.id in transaction_pool.all_transactions
    assert transaction_2.id in transaction_pool.all_transactions

    transaction_pool.clear_transactions_added_to_blockchain(blockchain)

    assert not transaction_1.id in transaction_pool.all_transactions
    assert not transaction_2.id in transaction_pool.all_transactions
Ejemplo n.º 2
0
def test_clear_blockchain_transactions():
    transaction_pool = TransactionPool()
    transaction_1 = Transaction(Wallet(), 'recipient', 1)
    transaction_2 = Transaction(Wallet(), 'recipient', 2)

    transaction_pool.add_transaction(transaction_1)
    transaction_pool.add_transaction(transaction_2)

    blockchain = Blockchain()
    blockchain.add_block([transaction_1.to_json(), transaction_2.to_json()])

    assert transaction_1.id in transaction_pool.transaction_map
    assert transaction_2.id in transaction_pool.transaction_map

    transaction_pool.clear_blockchain_transactions(blockchain)

    assert not transaction_1.id in transaction_pool.transaction_map
    assert not transaction_2.id in transaction_pool.transaction_map
Ejemplo n.º 3
0

PORT = 5000

if os.environ.get('SEED_DATA') == 'True':
    for i in range(10):
        blockchain.add_block([
            Transaction(Wallet(),
                        Wallet().address, random.randint(2, 20)).to_json(),
            Transaction(Wallet(),
                        Wallet().address, random.randint(2, 20)).to_json()
        ])

    for i in range(5):
        transaction_pool.add_transaction(
            Transaction(Wallet(),
                        Wallet().address, random.randint(2, 50)))

if os.environ.get('PEER') == "True":
    result = requests.get('http://localhost:5000/blockchain')
    full_blockchain = BlockChain.from_json(result.json())
    PORT = random.randint(5001, 6000)
    try:
        blockchain.replace_chain(full_blockchain.chain)
        print("\n -- Successfully synchronized the local blockchain")
    except Exception as e:
        print(f"\n -- Failed to Synchroniz the local blockchain: {e}")

app.run(port=PORT)

#serve(TransLogger(app, setup_console_handler=True))
Ejemplo n.º 4
0
def test_add_transaction():
    transaction_pool = TransactionPool()
    transaction = Transaction(Wallet(), "abcd", 10)
    transaction_pool.add_transaction(transaction)

    assert transaction_pool.all_transactions[transaction.id] == transaction
Ejemplo n.º 5
0
if os.environ.get('PEER') == 'True':
    PORT = random.randint(5001, 6000)

    result = requests.get(f'http://localhost:{ROOT_PORT}/blockchain')
    new_blockchain = Blockchain.from_json(result.json())

    try:
        blockchain.replace_chain(new_blockchain.chain)
        print('Synchronized the local blockchain')
    except Exception as e:
        print(f'Synchronization error: {e}')

for i in range(10):
    blockchain.add_block([
        Transaction.new_transaction(Wallet(),
                                    Wallet().address,
                                    random.randrange(10, 40, 10)).to_json(),
        Transaction.new_transaction(Wallet(),
                                    Wallet().address,
                                    random.randrange(10, 40, 10)).to_json()
    ])

for i in range(5):
    transaction_pool.add_transaction(
        Transaction.new_transaction(Wallet(),
                                    Wallet().address,
                                    random.randrange(10, 40, 10)))

app.run(port=PORT)
Ejemplo n.º 6
0
def test_add_transaction():
    transaction_pool = TransactionPool()
    transaction = Transaction(Wallet(), 'recipient', 1)
    transaction_pool.add_transaction(transaction)

    assert transaction_pool.transaction_map[transaction.id] == transaction