mirror of
https://github.com/bigchaindb/bigchaindb.git
synced 2024-10-13 13:34:05 +00:00
Problem: Needed some of the fixtures from tests/upsert_validator/conftest.py for tests in another directory
Solution: Moved the fixtures to `tests/conftest.py`
This commit is contained in:
parent
4a4cbc8de0
commit
e7d89abfce
@ -20,6 +20,7 @@ from logging.config import dictConfig
|
||||
import pytest
|
||||
from pymongo import MongoClient
|
||||
|
||||
from bigchaindb import ValidatorElection
|
||||
from bigchaindb.common import crypto
|
||||
from bigchaindb.log import setup_logging
|
||||
from bigchaindb.tendermint_utils import key_from_base64
|
||||
@ -710,7 +711,9 @@ def priv_validator_path(node_keys):
|
||||
def validators(b, node_keys):
|
||||
from bigchaindb.backend import query
|
||||
|
||||
original_validators = b.get_validators()
|
||||
height = get_block_height(b)
|
||||
|
||||
original_validators = b.get_validators(height=height)
|
||||
|
||||
(public_key, private_key) = list(node_keys.items())[0]
|
||||
|
||||
@ -721,13 +724,64 @@ def validators(b, node_keys):
|
||||
'voting_power': 10}]
|
||||
|
||||
validator_update = {'validators': validator_set,
|
||||
'height': b.get_latest_block()['height'] + 1}
|
||||
'height': height + 1}
|
||||
|
||||
query.store_validator_set(b.connection, validator_update)
|
||||
|
||||
yield
|
||||
|
||||
height = get_block_height(b)
|
||||
|
||||
validator_update = {'validators': original_validators,
|
||||
'height': b.get_latest_block()['height']}
|
||||
'height': height}
|
||||
|
||||
query.store_validator_set(b.connection, validator_update)
|
||||
|
||||
|
||||
def get_block_height(b):
|
||||
|
||||
if b.get_latest_block():
|
||||
height = b.get_latest_block()['height']
|
||||
else:
|
||||
height = 0
|
||||
|
||||
return height
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def b_mock(b, network_validators):
|
||||
b.get_validators = mock_get_validators(network_validators)
|
||||
|
||||
return b
|
||||
|
||||
|
||||
def mock_get_validators(network_validators):
|
||||
def validator_set(height):
|
||||
validators = []
|
||||
for public_key, power in network_validators.items():
|
||||
validators.append({
|
||||
'pub_key': {'type': 'AC26791624DE60', 'data': public_key},
|
||||
'voting_power': power
|
||||
})
|
||||
return validators
|
||||
|
||||
return validator_set
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def valid_election(b_mock, node_key, new_validator):
|
||||
voters = ValidatorElection.recipients(b_mock)
|
||||
return ValidatorElection.generate([node_key.public_key],
|
||||
voters,
|
||||
new_validator, None).sign([node_key.private_key])
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def new_validator():
|
||||
public_key = '1718D2DBFF00158A0852A17A01C78F4DCF3BA8E4FB7B8586807FAC182A535034'
|
||||
power = 1
|
||||
node_id = 'fake_node_id'
|
||||
|
||||
return {'public_key': public_key,
|
||||
'power': power,
|
||||
'node_id': node_id}
|
||||
|
||||
@ -7,45 +7,6 @@ import pytest
|
||||
from bigchaindb.upsert_validator import ValidatorElection
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def b_mock(b, network_validators):
|
||||
b.get_validators = mock_get_validators(network_validators)
|
||||
|
||||
return b
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def new_validator():
|
||||
public_key = '1718D2DBFF00158A0852A17A01C78F4DCF3BA8E4FB7B8586807FAC182A535034'
|
||||
power = 1
|
||||
node_id = 'fake_node_id'
|
||||
|
||||
return {'public_key': public_key,
|
||||
'power': power,
|
||||
'node_id': node_id}
|
||||
|
||||
|
||||
def mock_get_validators(network_validators):
|
||||
def validator_set(height):
|
||||
validators = []
|
||||
for public_key, power in network_validators.items():
|
||||
validators.append({
|
||||
'pub_key': {'type': 'AC26791624DE60', 'data': public_key},
|
||||
'voting_power': power
|
||||
})
|
||||
return validators
|
||||
|
||||
return validator_set
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def valid_election(b_mock, node_key, new_validator):
|
||||
voters = ValidatorElection.recipients(b_mock)
|
||||
return ValidatorElection.generate([node_key.public_key],
|
||||
voters,
|
||||
new_validator, None).sign([node_key.private_key])
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def valid_election_b(b, node_key, new_validator):
|
||||
voters = ValidatorElection.recipients(b)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user